java手写线程池ThreadPoolExecutor 七大参数如何精准给定
corePoolSize java 线程池默认为0 有需求就创建没有就降为0 类似与懒加载!
maximunPoolSize 这个参数如何根据CPU核心数给定呢? 请看如下算法
在自定义线程池的时候,我们应该如何选择线程的核心数量?
这里又一个简单的方法供大家参考。
java 代码获取CPU核心数
System.out.println(Runtime.getRuntime().availableProcessors());
CPU 密集型:线程数量=cpu核心数量+1个线程的线程池
IO 密集型:线程数量=cpu核心数量*2
两种算法:
第一种:
第二种: