Java线程池难嘛?一张图读懂源码
1、创建一个线程池
2、分析线程池执行情况
So easy!
corePoolSize:如果任务超过,固定运行5个线程这5个不会释放
linkedBlockingQueue:如果任务超过5个,比如1005个任务。这时候有5线程在corePoolSize跑,另外1000个被缓存在Queue里面等待运行
maximumPoolSize:如果任务超过1500 + 5 + 10. 比如1515,这时候5个任务在corePool里面,1500个在Queue里面,另外10个当成普通线程运行。
如果任务超过1515,比如1516;最后一个线程直接抛错
本文来自博客园,作者:SArtOnline,转载请注明原文链接:https://www.cnblogs.com/sartonline/p/16386683.html