该文章应该是一些重点的总结,有滥竽充数之嫌
1、线程池在调用shutdown()后无法提交任务
2、线程池shutdown()后,其状态会迁移到SHUTDOWB状态,等待工作线程执行完成
3、线程池shutdownNow()后,其状态会迁移到STOP状态,调用工作线程的interrupt方法,但不一定能停止工作线程,需要用户逻辑实现中断的响应。
4、线程池中有两种锁,一把是mainLock,用于控制对工作线程集合的访问;一种是worker继承自AQS的锁,用于控制worker的状态。
源码阅读 - 线程池:线程池原理(一)线程池概述
源码阅读 - 线程池: 线程池原理(二)线程池构造函数解析
源码阅读 - 线程池:线程池原理(三)线程池的状态解析
源码阅读 - 线程池:线程池原理(四)addWorker–execute方法的前奏
源码阅读 - 线程池:线程池原理(五)一个execute(Runnable)调用经历了什么?
源码阅读 - 线程池:线程池原理(六)线程的任务调度和执行runWoker
源码阅读 - 线程池:线程池原理(七)线程池的关闭
源码阅读 - 线程池:线程池原理(八)ThreadPoolExecutor
源码阅读 -线程池:线程池原理(九)相关接口介绍
源码阅读 - 线程池:线程池原理(十)Worker内部类