饱和策略问题
来源:6-13 线程池饱和策略之终止策略

love_
2020-04-14
核心线程固定为2个
最大线程固定5个
有界阻塞队列为7
结果:只有启动了三个线程
核心线程固定为2个
最大线程固定5个
有界阻塞队列为8
结果:只有启动了2个线程
当阻塞队列为5的时候,又启动了5个,没理解为什么这样,,阻塞队列越大,启动线程数越趋向核心线程,反而最大线程无效!
写回答
1回答
-
这取决于你提交了多少个线程任务,我猜你也就提交了不到十个任务吧。
线程池接收任务的过程是这样,比如核心2,最大5,队列5。提交第一个和第二个任务,会使用核心线程执行,提交第三个到第七个任务,会放到队列中暂存,提交第八个到第十个任务,回启动最大线程执行,提交第十一个或更多,会触发拒绝策略。
你的问题,就是因为队列越大,被暂存的任务就越多,从而导致不能启动最大线程。012020-04-15
相似问题