ExecutorService threadPood = new ThreadPoolExecutor(0,//核心线程数 8,//最大线程数 1l,//时间 TimeUnit.SECONDS,//时间单位 new LinkedBlockingDeque(3),// 阻塞队列长度(Java默认提供的线程池队列长度几乎无界,不太适合,要限定大小) Executors.defaultThreadFactory(),//创建线程的工厂 new ThreadPoolExecutor.AbortPolicy());//超出线程处理范围的拒绝策略
核心线程数:可以默认为0,如果有任务处理就创建,没有任务处理就销毁
最大线程数:CPU密集型计算的配置是:CPU内核数+1
IO密集型读写较多的配置:1、CPU内核数 * 2
2、CPU内核数 /(1-阻塞系数) 阻塞系数范围:0.8~0.9范围