httpclient操作引发Too many open files

来自:http://www.54chen.com/java-ee/java-httpclient-too-many-open-files.html
实际上,HttpClient建立Socket时 ,post.releaseConnection()并没有真正关闭连接,而是将该连接提交给 MultiThreadedHttpConnectionManager,等待复用。
而http的连接是等待timeout才会自动断开的,所以,当用完系统的句柄后,自然会报Too many open files
解决办法:
设置post方法的header,增加红色字体部分的配置:
HttpClient client = new HttpClient();
   client.getParams().setBooleanParameter(
     "http.protocol.expect-continue", false);

   PostMethod method = new PostMethod(url);
   method.addRequestHeader("Connection", "close");
 

你可能感兴趣的:(httpclient,职场,open,Files,休闲,too,many)