ThreadPoolTaskExecutor ipFinderThreads = new ThreadPoolTaskExecutor();
ipFinderThreads.setCorePoolSize(20);
ipFinderThreads.setMaxPoolSize(3000);
ipFinderThreads.setKeepAliveSeconds(0);
ipFinderThreads.setQueueCapacity(100);

经过多次的尝试和实践。至少明白的工作方式。

ThreadPoolTaskExecutor  优先创建  CorePoolSiz 线程, 当继续增加线程是,先放入Queue中,当 CorePoolSiz  和 Queue 都满的时候,就增加创建新线程,当线程达到MaxPoolSize的时候,就会抛出错误 org.springframework.core.task.TaskRejectedException

另外如何MaxPoolSize 设定 比 系统native thread个数要大的话,会优先抛出java.lang.OutOfMemoryError: unable to create new native thread

所以大家需要小心使用线程。这样的错误非常难分析i

另外进过分析  32位操作系统,支持的线程个数 一般 在 5000左右,具体需要通过代码测试在知道。

最新文章

  1. Flux Demo解析
  2. Spark工程开发常用函数与方法(Scala语言)
  3. $.ajax获取不到数据问题解决
  4. C/C++求职宝典21个重点笔记
  5. make clean vs make clobber
  6. JAVA 对象拷贝
  7. 眼花缭乱的UI,蓝牙位于何方
  8. 单词方阵 洛谷 P1101
  9. 增强遍历和Object多参数遍历
  10. js面向对象的理解
  11. 微信公众平台开发,图文回复、access_token生成调用、以及微信SDK的实现(2)
  12. HTTP 学习心得
  13. Perl流程控制语句
  14. loadrunner笔记(一):下载、安装loadrunner和负载压力测试概念说明
  15. jquery查找筛选器
  16. 移动端二三事【三】:transform的矩阵(matrix)操作、transform操作函数及注意事项
  17. Libjingle库 综述
  18. CTF-练习平台-Misc之 这么多数据包
  19. Elasticsearch学习(5) Elasticsearch+logstash +filebeat+log4j的日志系统
  20. python3入门之赋值语句介绍

热门文章

  1. (十三)linux文件系统详解(基于ext2文件系统)【转】
  2. 算法总结之 在数组中找到出现次数 > N/K的数
  3. 解决maven寻找依赖关系失败的问题
  4. android、ipone在文本框中输入文字的不同
  5. Linux 解压压缩命令
  6. Python去除字符串的空格
  7. svg_鼠标手型
  8. review30
  9. java RC4加密解密
  10. spring:使用会话和请求作用域