: 因为创建线程需要比较大的开销,并且线程数太多的情况下上下文切换比较频繁,所以我们希望有一种机制来改善它,这就是线程池,改善的核心就是控制线程的数量,通过暴露接口,可以满足用户创建不同场景下的线程池...,还是处理不过来,拒绝吧,提供了几种 拒绝策略
其他: 一段时间后,任务太少了,那些一直不工作的线程怎么处理?...在创建线程池的时候,有提到一个参数:空闲时间,这个空闲时间是什么意思呢?...Worker执行完firstTask之后,就会去工作队列中拿任务继续执行,工作队列是一个阻塞队列,当工作队列中没有任务时,线程就会阻塞,直到有提交了新的任务....Integer.MAX_VALUE
空闲时间为60s,也就是一分钟
3.工作队列为SynchronousQueue,这是一个比较特殊的阻塞队列,当一个生产者线程向队列中存数据时,生产者线程将被阻塞直到有另一个消费者线程从队列中取数据