博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HttpClient 4.x 多线程
阅读量:4082 次
发布时间:2019-05-25

本文共 881 字,大约阅读时间需要 2 分钟。

背景:日志报错:

参考:

(一)

项目用到了httpclient4.1开发。在多线程的情况下,异常报

 

Invalid use of SingleClientConnManager: connection still allocated

 

从国外的一张帖子看到,httpclient默认使用的是SingleClientConnManager,但在并发环境下最好使用ThreadSafeClientConnManager。代码如下:

 

HttpClient client = new DefaultHttpClient(new ThreadSafeClientConnManager());

 

HttpGet httpGet = null;

(二)

  1.         ThreadSafeClientConnManager cm = new ThreadSafeClientConnManager();  
  2.         cm.setMaxTotal(100);  
  3.   
  4.         HttpClient httpclient = new DefaultHttpClient(cm); 

于是改代码为

static    {        ThreadSafeClientConnManager cm = new ThreadSafeClientConnManager();        cm.setMaxTotal(100);        httpclient = new DefaultHttpClient(cm);        httpclient = (DefaultHttpClient) HttpClientConnectionManager.getSSLInstance(httpclient);    }
org.apache.httpcomponents
httpclient
4.3.5

过两天看看效果吧,最晚一个error是 2.28 10:21

3.2  未再出现过同类error

你可能感兴趣的文章
FTP的命令
查看>>
CentOS操作系统下安装yum的方法
查看>>
ping 报name or service not known
查看>>
FTP 常见问题
查看>>
zookeeper单机集群安装
查看>>
do_generic_file_read()函数
查看>>
Python学习笔记之数据类型
查看>>
Python学习笔记之特点
查看>>
shell 快捷键
查看>>
VIM滚屏操作
查看>>
EMC 2014存储布局及十大新技术要点
查看>>
linux内核内存管理(zone_dma zone_normal zone_highmem)
查看>>
将file文件内容转成字符串
查看>>
循环队列---数据结构和算法
查看>>
优先级队列-数据结构和算法
查看>>
链接点--数据结构和算法
查看>>
servlet中请求转发(forword)与重定向(sendredirect)的区别
查看>>
Spring4的IoC和DI的区别
查看>>
springcloud 的eureka服务注册demo
查看>>
eureka-client.properties文件配置
查看>>