Как использовать HttpClient с многопоточной операцией?

Я должен сделать приложение, которое выполняет запрос POST для входа в определенный хост, затем перемещает некоторые страницы, находит и извлекает некоторые данные. Станьте сайт resouce защищен сессией, поэтому сначала я должен зайти на сайт, прежде чем я смогу выполнить некоторую операцию, например, получить или опубликовать некоторые данные. Мой вопрос в том, что HttpClient не является потокобезопасным, как я могу создать только один экземпляр HttpClient, но потоки могут безопасно выполнять его? Помните, что базовое соединение должно сначала войти в систему, прежде чем его можно будет использовать.

Ответ 2

Вы можете сделать поток HttpClient безопасным, указав безопасный клиентский менеджер потока.

API: http://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/org/apache/http/impl/conn/tsccm/ThreadSafeClientConnManager.html

http://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/org/apache/http/impl/client/DefaultHttpClient.html#DefaultHttpClient%28org.apache.http.conn.ClientConnectionManager%29

Пример: http://thinkandroid.wordpress.com/2009/12/31/creating-an-http-client-example/