采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
如果把corePoolSize设置Integer.MAX_VALUE,省去了queue是否满的判断,这样会不会更好?
你好,理论上是可以这样做,但实际中这样设置代码是有问题的,首先你的系统不一定能开那么多thread,其次开启thread是要消耗内存和cpu资源的,你的java进程可以使用的内存是有限的,可以使用的cpu资源也是受服务器限制的,还有一点是,过多的线程会导致cpu时间片调度变得更复杂(所以线程调度一轮可能需要花费很长一段时间),导致达不到使用线程池的效果。corePoolSize开的太大,其实就已经失去了线程池的意义。
的确,资源有限是一点.线程调度周期也更长. 感谢老师解惑
登录后可查看更多问答,登录/注册
构建完整并发与高并发知识体系,倍增高薪面试成功率!
2.0k 1
1.4k 18
1.4k 15
4.0k 12
1.6k 12
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号