对于多个执行方法调用,是否可以使用相同的 HttpClient * 对象 *? (假设我没有同时执行 HttpGet请求)
答案 0 :(得分:1)
您可以使用AndroidHttpClient
来执行api 8或更高版本的操作。请参阅此链接以了解如何使用AndroidHttpClient:http://www.java2s.com/Code/Android/Network/CreateHttpconnection.htm
否则,您可以使用ThreadSafeClientConnManager
。 “此连接管理器不处理单个连接,而是处理它们的池,其中每个连接都可以从池中获取,分配给一个线程(然后具有对它的独占访问权限),并在线程返回到池中如果相同或另一个线程声明同一路由的连接,则可以立即从池中重用连接而无需先关闭并重新打开它,从而避免在建立连接时由HTTP执行的握手开销。例如,new connection.ThreadSafeClientConnManager将最大总连接数的默认值设置为20,并将每个路由的最大连接数设置为2。
- 来自“Android in Practice”
您可以通过此链接了解ThreadSafeClientConnManager:http://massapi.com/class/th/ThreadSafeClientConnManager.html
答案 1 :(得分:0)
使用相同的HttpClient是不安全的,但你可以使用AndroidHttpClient,
AndroidHttpClient client = AndroidHttpClient.newInstance("xxxx");
AndroidHttpClient是线程安全的。