參考連接:html
https://www.cnblogs.com/jiangxiulian/p/7443983.htmlspa
1. corePoolSize: 核心線程數
缺省值爲1線程
- 核心線程會一直存活,即便沒有任務須要執行
- 當線程數小於核心線程數,即便有空閒線程,線程池也會優先建立新線程處理
- 設置allowCoreThreadTimeout=true(默認false)時,核心線程會超時關閉
2. queueCapacity: 任務隊列容量(阻塞隊列)
當核心線程數達到最大時,新任務會放在隊列中排隊等待執行htm
3. maxPoolSize: 最大線程數
- 當前線程數 >= corePoolSize, 且任務對列已滿時,線程池會建立新線程來處理任務
- 當前線程數 = maxPoolSize, 且任務對列已滿時, 線程池會拒絕處理任務而拋出異常
4. keepAliveTime: 線程空閒時間
- 當空閒時間達到keepAliveTime時,線程會退出,直到線程數量等於corePoolSize
- 若是allowCoreThreadTimeout=true, 則線程會退出,直到線程數量等於0
5. allowCoreThreadTimeout:容許核心線程超時
缺省是falseblog
6. rejectedExecutionHandler: 任務拒絕處理器
- 當線程數達到maxPoolSize, 且隊列已滿,會拒絕新任務
- 當線程池調用shutdown()和線程池真正shutdown之間提交的任務會被拒絕。