ThreadPoolExecutor动态设置corePoolSize大小

发布于 2021-11-18 14:12:30 字数 332 浏览 817 评论 9

ThreadPoolExecutor动态设置corePoolSize大小,
调用setCorePoolSize(int size)当调整的参数变小的时候多余的线程就会不会被回收掉。

参考了这篇文章设置了下http://freeheron.javaeye.com/blog/664278还是不行


请问各位大侠们如何解决????

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(9

孤独患者 2021-11-23 15:13:09

corePoolSize不需要调整啊,corePoolSize有点像是工作线程,当缓冲队列没满的时,由corePoolSize的线程从缓存队列中取数据来消费。当缓冲队列满的时候,由ThreadPoolExecutor创建数量不大于maxinumPoolSize的线程来直接处理线程请求。如果请求线程数大于maxinumPoolSize,则使用RejectedExecutionHandler定义策略进行处理。

大师设计的这个类的设计确实很niubility.

噩梦成真你也成魔 2021-11-23 13:23:00

我的意思是根据给定处理数据数量反过来控制线程数的数量,这样可以减少系统中总的线程数,这样其他线程可被快速响应。

难道ThreadPoolExecutor线程池中的线程小于等于核心线程数时会被自主回收吗???

残花月 2021-11-23 13:07:25

使用的时候,这个参数都不作调整啊,有调整的必要吗

沙与沫 2021-11-23 12:15:08

哪位可以解决这个问题

陌上芳菲 2021-11-22 23:41:37

根据经验,和专家推荐,corePoolSize的值等于服务器CPU的个数 + 1,就是最优值,可以直接设定死,没必要动态改变。

当然需要计算线程处理时间和等待时间。

本宫微胖 2021-11-22 10:43:03

引用来自#4楼“刘吵”的帖子

引用来自#3楼“鉴客”的帖子

这个应该在初始化的时候就设置好,不支持动态调整

复古式 2021-11-21 19:04:32

引用来自#3楼“鉴客”的帖子

这个应该在初始化的时候就设置好,不支持动态调整

冷默言语 2021-11-20 10:05:57

这个应该在初始化的时候就设置好,不支持动态调整

墨洒年华 2021-11-19 13:46:49

老大透露个呗

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文