並發編程系列---【線程池七大核心參數】


一、七大核心參數

1.corePoolSize                            核心線程數

2.maximumPoolSize                   最大線程池參數

3.keepAliveTime                         任務結束后,線程存活此處指定時間后才會被釋放

4.TimeUnit                                  上一個參數的單位,常用s,ms

5.BlockingQueue                        隊列,當核心線程用完時,任務放進隊列

6.ThreadFactory                         線程工廠

7.丟棄策略                                  默認Abort,直接丟棄,並拋出異常

二、線程池原理

所有線程池,剛創建時,都只包含0個線程。

當為線程指定任務時,如果同時指定多個任務,線程池會創建corePoolSize個線程執行任務,

剩下的任務會放入BlockingQueue中緩存,

如果隊列滿了,裝不下(有界隊列),如果繼續往線程池中部署任務,那么會創建新的線程執行任務,但是總線程數不會超過maximumPoolSize個,

當任務執行完畢,經過keepAliveTime(TimeUnit 指定時間單位)后,會釋放線程,讓線程池中保持corePoolSize個線程。


免責聲明!

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



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