1. 程式人生 > 其它 >Executors:執行緒池的工具類處理執行緒

Executors:執行緒池的工具類處理執行緒

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來指定執行緒池引數,這樣可以明確執行緒池的執行規則,規避資源耗盡的風險。