8

我使用org.apache.http.client.HttpClient。我有一个关于使用这个类的问题。

我应该为HttpClient每个请求创建一个新的对象(例如,因为它是一个轻量对象)还是最好为每个 http 请求使用一个唯一的实例(例如,因为创建/删除很昂贵)?HttpClient如果必须只使用一个实例,HttpClient线程安全(例如,它可以同时处理许多 http 请求)还是在这种情况下最好创建一个HttpClients 池?

实际上,我为每个请求创建了一个新的 HttpClient。我怀疑我必须创建一个唯一的实例,以便在使用我的应用程序结束时通过 using 关闭getConnectionManager().shutdown(),但我不知道我是否可以维护基于线程的并行性。

4

1 回答 1

4

DefaultHttpClient@ThreadSafe注释,所以是的,您可以以线程安全的方式使用它。HTTPClient 的性能文档还积极建议尽可能使用单个实例。

于 2013-04-14T16:40:24.737 回答