我正在尝试使用HTTPAsyncCLient进行激活,并忘记在我的应用中。
http://hc.apache.org/httpcomponents-asyncclient-4.0.x/
但是对于真正的火灾和忘记,我需要避免关闭客户端,因为我不想等待响应,如果我关闭,可能直到那时才建立连接。
CloseableHttpAsyncClient httpclient = HttpAsyncClients.createDefault();
httpclient.start();
HttpGet request = new HttpGet(url);
Future<HttpResponse> future = httpclient.execute(request, null);
HttpResponse resp = future.get();
httpclient.close();
所以有人认为我不会关闭httpclient,并继续将其用于多个URL。 所以我将在服务器启动时生成一个客户端,并继续为所有请求使用相同的客户端。
这样,不需要关闭,因为只有在服务器停止时才会释放。 我的问题是这会是一个问题吗?客户会在一段时间后变得陈旧吗?
答案 0 :(得分:4)
强烈建议重复使用HttpAsyncClient
的同一个实例。 HttpAsyncClient不会“陈旧”。只有在没有更多请求被执行时才会关闭HttpAsyncClient
(例如,在应用程序关闭的情况下)。