HttpClient卡住,没有任何异常
2022-09-01 14:17:25
我正在开发一个长时间运行的应用程序,该应用程序大量使用apache的HttpClient。
在我的第一次测试运行中,应用程序运行良好,直到它卡住。它没有停止,它没有抛出任何异常,它只是坐在那里什么都不做。
我刚才做了第二次跑步,停止了时间,在大约24小时的连续跑步后,它停止了。此外,我注意到我运行它的笔记本电脑的互联网连接在应用程序卡住的那一刻终止了。我不得不重新启动我的WLAN适配器才能使网络再次运行。
但是,该应用程序在连接再次启动后没有恢复工作。而现在,它又卡住了。
在 HttpClient 中是否有任何我不知道的超时控制器?为什么我的应用程序在连接断开时不引发异常?
使用客户端的部分如下所示;
public HttpUtil(ConfigUtil config) {
this.config = config;
client = new DefaultHttpClient();
client.getParams().setParameter(HttpProtocolParams.USER_AGENT, this.config.getProperty("httputil.userAgent"));
}
public String getContentAsString(String url) throws ParseException, ClientProtocolException, IOException {
return EntityUtils.toString(
client.execute(
new HttpGet(url)).getEntity());
}
应用程序反复调用所需的 URL。httputil.getContentAsString()