Java 并发线程池线程数配置
1. 如果任务是计算密集型的,线程池大小建议设置为Ncpu + 1
其中N是CPU数量,
+1 是为了在某一个线程处于暂停阶段时,有新的线程可以用来执行,减少CPU中断时间。
2. 如果是IO密集型,则需要增大线程数大小,避免IO操作占用过多的CPU时间
Nthreads = Ncpu x Ucpu x (1 + W/C),其中
Ncpu = CPU核心数
Ucpu = CPU使用率,0~1
W/C = 等待时间与计算时间的比率
用自己的努力创造我们的未来