线程池状态
RUNNING -1 :接收新任务并且执行队列中的任务
SHUTDOWN 0 :不再接收新任务,但是继续执行队列中的任务
STOP 1 :不再接收新任务,也不执行队列中的任务,并且中断执行中的任务
TIDYING 2 :所有任务已终止,workerCount为0,将要执行terminated()方法
TERMINATED 3 :terminated()方法执行完毕
状态转变路径
RUNNING -> SHUTDOWN
执行shutdown()方法
- (
RUNNING or SHUTDOWN) -> STOP
执行shutdownNow()方法
SHUTDOWN -> TIDYING
当队列和任务都为空
STOP -> TIDYING
当线程池为空
TIDYING -> TERMINATED
terminated()方法已经执行完毕
关闭方法
- shutdown()
启动有序关闭,执行之前提交的任务,但不接受新任务。这个方法不会等到所有任务执行完才返回,使用awaitTermination()达到等待的目的。
- shutdownNow()
尝试停止所有正在执行的任务,停止等待任务的处理,并返回等待执行的任务列表。从该方法返回后,这些任务将从任务队列中排出(删除)。这个方法不会等待任务终止才返回,使用awaitTermination()达到等待的目的。
posted @
2025-11-11 11:36
Hekk丶
阅读(
2)
评论()
收藏
举报