JAVA線程池如何合理配置核心線程數?


線程池合理的線程數你是如何考慮的?:

1.先看下機器的CPU核數,然后在設定具體參數:

System.out.println(Runtime.getRuntime().availableProcessors());

即CPU核數 = Runtime.getRuntime().availableProcessors()

2.分析下線程池處理的程序是CPU密集型,還是IO密集型

CPU密集型:核心線程數 = CPU核數 + 1

IO密集型:核心線程數 = CPU核數 * 2

注:IO密集型(某大廠實踐經驗)

       核心線程數 = CPU核數 / (1-阻塞系數)     例如阻塞系數 0.8,CPU核數為4

       則核心線程數為20


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM