27_线程池_线程池实现原理
【线程池的状态】
ThreadPoolExecutor类中定义了线程池的几种状态
当创建线程池后,初始时,线程池状态为RUNNING。
如果调用了shutdown()方法,则线程池处于SHUTDOWN状态,此时线程池不能接受新的任务,它会等待所有任务执行完毕。
如果调用了shutdownNow()方法,则线程池处于STOP状态,此时线程池不能接受新的任务,并且会去尝试终止正在执行的任务。
当线程池处于SHUTDOWN或STOP状态,并且所有工作线程已经销毁,任务缓存队列已经清空或执行结束后,线程池被设置为TERMINATED状态。