2011-12-19 14 views
5

Piszę aplikację skrzydłowe ze HttpClient 4.HttpClient 4 - Co się stało z MultiThreadedHttpConnectionManager?

Śledziłem standardowego podejścia przepuszczając ThreadSafeClientConnManager do mojego udostępnionego HttpClient przykład teraz. Ale teraz chciałbym móc wykonywać wiele żądań/pobrań w tym samym czasie ...

Znalazłem kilka przykładów z MultiThreadedHttpConnectionManager dla HttpClient 3.x, ale czy mogę go używać dla wersji 4.x? Jeśli tak to jak ? Próbowałem, ale bez powodzenia ...

Dzięki;)

Odpowiedz

11

W wersji 4.x odpowiednikiem jest Menedżer połączeń grupujących. Możesz przeczytać więcej szczegółów na temat jego użycia w sekcji Pooling connection manager here. Chciałbym również gorąco polecić Ci ich forum na read this thread.

1

Nie ma wskazania w javadoc że instancja DefaultHttpClient jest bezpieczny wątku.

Tak, myślę, że powinieneś po prostu utworzyć instancję HttpClient dla każdego działania ... używając wspólnej/współużytkowanej instancji ThreadSafeClientConnManager. To powinno umożliwić ponowne użycie połączeń między instancjami HttpClient. Upewnij się tylko, że nie zamykasz menedżera połączeń.

Interfejsy API wystarczająco różnią się między wersją 3.x a 4.x, że byłbym zaskoczony, gdyby przykłady dla jednego były pouczające dla drugiego.

Powiązane problemy