线程池线程数处理
Posted chen
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了线程池线程数处理相关的知识,希望对你有一定的参考价值。
多线程场景
CPU密集型:
cpu满载运算,这种情况线程池最大线程数不应该大于CPU核心(超线程)数,
否则资源争抢CPU上下文切换存在损耗。(test case)
IO密集型:
CPU寄存器,三级缓存,内存速度远大于硬盘等IO设备读写速度,当出现IO操作时,单线程会浪费
很多IO等待时间。这种情况新开一个线程处理IO即可。(file)
以上是关于线程池线程数处理的主要内容,如果未能解决你的问题,请参考以下文章
newCacheThreadPool()newFixedThreadPool()newScheduledThreadPool()newSingleThreadExecutor()自定义线程池(代码片段