【線程池的實現原理和實現方法 線程池的實現原理】

文章插圖
1、java線程池的實現原理很簡單 , 說白了就是一個線程集合workerSet和一個阻塞隊列workQueue 。當用戶向線程池提交一個任務(也就是線程)時,線程池會先將任務放入workQueue中 。workerSet中的線程會不斷的從workQueue中獲取線程然后執行 。當workQueue中沒有任務的時候 , worker就會阻塞,直到隊列中有任務了就取出來繼續執行 。
2、線程池的幾個主要參數的作用
corePoolSize: 規定線程池有幾個線程(worker)在運行 。
maximumPoolSize: 當workQueue滿了,不能添加任務的時候,這個參數才會生效 。規定線程池最多只能有多少個線程(worker)在執行 。
keepAliveTime: 超出corePoolSize大小的那些線程的生存時間,這些線程如果長時間沒有執行任務并且超過了keepAliveTime設定的時間,就會消亡 。
unit: 生存時間對于的單位
workQueue: 存放任務的隊列
threadFactory: 創建線程的工廠
handler: 當workQueue已經滿了,并且線程池線程數已經達到maximumPoolSize,將執行拒絕策略 。
相關經驗推薦
- 合肥居家健康監測的要求標準
- 笛子弱高音怎么吹的 笛子弱高音怎么吹
- 鉆山風的功效與作用 鉆山風的藥用功效
- 方管45度怎么切的標準 方管45度角切割方法
- 燃燒意志如何切換形象,燃燒意志怎么切換顯示的人物
- 中元節出生的人禁忌 中元節生人有什么忌諱嗎
- 廣東蘿卜酸的腌制方法 怎么做廣東酸蘿卜
- 酸辣椒的腌制方法 怎么腌制酸辣椒
- 四川酸豇豆的腌制方法 怎么做四川酸豇豆
- 魷魚炒酸菜的做法 怎么做魷魚炒酸菜
