应该什么时候关闭HttpClient?

时间:2014-12-18 13:04:28

标签: java apache http apache-commons apache-commons-httpclient

我正在构建一个Android应用程序,它将向服务器发送多个HTTP请求(比如每秒一个请求)以获取数据。我必须遵循哪些最佳做法?

我应该在每次请求后创建和关闭客户端,如下所示吗?

CloseableHttpClient httpClient = HttpClientBuilder.create().build();

try {
    HttpPost request = new HttpPost("http://yoururl");
    StringEntity params = new StringEntity(json.toString());
    request.addHeader("content-type", "application/json");
    request.setEntity(params);
    httpClient.execute(request);
// handle response here...
} catch (Exception ex) {
    // handle exception here
} finally {
    httpClient.close();
}

或者我应该最初创建一个客户端,将它用于所有请求,然后在我完成后最终关闭它?

1 个答案:

答案 0 :(得分:1)

关闭HttpClient的想法是释放已分配的资源。因此,这取决于您计划触发这些HTTP请求的频率。

请记住,每10秒发出一次请求被认为是永恒的;)