Java线程池线程数量的变化过程

Java线程池在新建的时候,会设定线程池的核心线程数(corePoolSize)和最大线程数(maxPoolSize)两个值。

线程池中存活的线程数量会>=核心线程数,并且小于等于最大线程数。

线程数变化基本上是下面几种情况:

  1. 线程数量小于核心线程数的话,则生成新的线程;
  2. 如果线程数量大于等于核心线程数的话,并且任务有堆积的话,则把任务加到queue中;
  3. 如果queue已经满了,并且线程数量少于最大线程数,则生成新的线程;
  4. 如果queue已经满了,并且线程数量等于最大线程数,则拒绝新的任务;

posted on 2018-04-04 02:07  threesig  阅读(534)  评论(0)    收藏  举报

导航