Executors:執行緒池的工具類處理執行緒
阿新 • • 發佈:2022-11-30
Executors:執行緒池的工具類處理執行緒
Executors得到執行緒池物件的常用方法
Executors:執行緒池的工具類通過呼叫方法返回不同型別的執行緒池物件。
Executors的底層其實也是基於執行緒池的實現類ThreadPoolExecutor建立執行緒池物件的。
package com.itheima.d8_threadpool; import java.util.concurrent.*; /** 目標:使用Executors的工具方法直接得到一個執行緒池物件。 */ public class ThreadPoolDemo3 { public static void main(String[] args) throws Exception { // 1、建立固定執行緒資料的執行緒池 ExecutorService pool = Executors.newFixedThreadPool(3); pool.execute(new MyRunnable()); pool.execute(new MyRunnable()); pool.execute(new MyRunnable()); pool.execute(new MyRunnable()); // 已經沒有多餘執行緒了 } }
Executors使用可能存在的陷阱
大型併發系統環境中使用Executors如果不注意可能會出現系統風險。
Executors使用可能存在的陷阱
大型併發系統環境中使用Executors如果不注意可能會出現系統風險。
Executors工具類底層是基於什麼方式實現的執行緒池物件?
執行緒池ExecutorService的實現類:ThreadPoolExecutor
Executors是否適合做大型網際網路場景的執行緒池方案?
不合適。
建議使用ThreadPoolExecutor來指定執行緒池引數,這樣可以明確執行緒池的執行規則,規避資源耗盡的風險。