線程池的7大核心參數(shù)包括:
1.核心線程數(shù)(Core Pool Size):線程池中最小的線程數(shù),即在線程池中一直保持的線程數(shù)量,不受空閑時間的影響。
2.最大線程數(shù)(最大池大小)
3.空閑線程存活時間(Keep Alive Time):當線程池中的線程數(shù)超過核心線程數(shù)時,多余的線程會被回收,此參數(shù)即為非核心線程的空閑時間,超過此時間將被回收。
4.工作隊列(Work Queue):用于存儲等待執(zhí)行的任務(wù)的隊列,當線程池中的線程數(shù)達到核心線程數(shù)時,新的任務(wù)將被加入工作隊列等待執(zhí)行。
5.拒絕策略(Reject Execution Handler):當線程池和工作隊列都已經(jīng)達到最大容量,無法再接收新的任務(wù)時,拒絕策略將被觸發(fā)。常見的拒絕策略有拋出異常、直接丟棄任務(wù)、丟棄隊列中最老的任務(wù)等。
6.線程工廠 (Thread Factory):用于創(chuàng)建新的線程,可定制線程名字、線程組、優(yōu)先級等。
7.阻塞策略(Block Policy):當工作隊列已滿時,向線程池中添加任務(wù)的策略。常見的策略有:直接拋出異常、阻塞調(diào)用者、丟棄任務(wù)等。
這些參數(shù)可以通過線程池的構(gòu)造方法來設(shè)置,根據(jù)應(yīng)用場景的不同,需要根據(jù)實際情況進行調(diào)整。