JUC学习-20-线程池关闭
JUC学习-20-线程池关闭
一、线程池一直占用系统资源,会导致内存泄露等问题,并且主线程不会退出
二、执行完shutdown()方法后不会立马关闭线程池,会等待线程池中所有的线程执行完后才彻底关闭
threadPool;.shutdown()
三、isTerminated()判断线程池是否真正的终止了。(线程池关闭 & 线程池内所有的线程全部执行完毕)
三、等待线程池完全执行完毕
try {
// 等待线程池关闭 等待线程池中所有的线程执行完
threadPool.awaitTermination(Long.MAX_VALUE, TimeUnit.SECONDS);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
四、执行完shutdownNow()方法后,不会立马关闭线程池,会等待线程池中正在执行的线程执行完后才彻底关闭
threadPool.shutdownNow();
本文来自博客园,作者:skystrivegao,转载请注明原文链接:https://www.cnblogs.com/skystrive/p/18991091
整理不易,如果对您有所帮助 请点赞收藏,谢谢~