线程池的5种状态
1.Running: 接受新task, 处理等待的task;
2.ShutDown: 不接受新task,但处理等待的task;
3.Stop: 不接受新task, 不处理等待的task, 尝试打断正在执行的task;
4.Tidying:但所有task都被终止, worCount == 0的时候(workCount是指有效的线程数);
5.Terminated: 执行完terminated()方法;
Running -> ShutDown:
执行shutdown();
Running or ShutDown --> Stop:
执行shutdownNow();
Stop --> Tidying
当pool为空时
ShutDown --> Tidying
当queue 和 pool都为空时
Tidying --> Terminated
当terminated()方法结束时;