private static final ForkJoinPoolDEFAULT_POOL =new ForkJoinPool(10);
谨慎被多个业务领域同时引用的情况,易出现低响应的低要求业务挤压重要的核心业务,导致系统核心业务受影响。
ForkJoinPoolDEFAULT_POOL =new ForkJoinPool(Runtime.getRuntime().availableProcessors() /2 +1);
禁止使用cpu核心数进行计算线程数,应用在运行过程中线程数是随业务的多样性呈现的,系统可能存在多个线程池,使用cpu核数计算线程数达到最优在这种情况下是不准确的。使用cpu核数计算最优线程数据在应用处理cpu密集型的单一业务场景比较适用。
ForkJoinPool建议在各自的业务场景下合理定义线程数,线程池即时使用即时释放。