91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

java threadpoolexecutor怎樣使用

小樊
81
2024-11-17 00:15:56
欄目: 編程語言

Java的ThreadPoolExecutor是一個用于執行和管理線程的類,它可以幫助你更有效地控制并發任務的執行。下面是一個簡單的示例,展示了如何使用ThreadPoolExecutor來執行一組任務:

  1. 首先,導入必要的包:
import java.util.concurrent.*;
  1. 創建一個ThreadPoolExecutor實例:
int corePoolSize = 5; // 核心線程數
int maximumPoolSize = 10; // 最大線程數
long keepAliveTime = 60L; // 空閑線程的存活時間(單位:秒)
 TimeUnit unit = TimeUnit.SECONDS; // 存活時間的單位
BlockingQueue<Runnable> workQueue = new LinkedBlockingQueue<>(20); // 任務隊列

ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(
        corePoolSize, maximumPoolSize, keepAliveTime, unit, workQueue);
  1. 提交任務到ThreadPoolExecutor
for (int i = 0; i < 20; i++) {
    int finalI = i;
    threadPoolExecutor.submit(() -> {
        System.out.println("Task " + finalI + " is executed by thread " + Thread.currentThread().getName());
    });
}
  1. 關閉ThreadPoolExecutor
threadPoolExecutor.shutdown();
try {
    if (!threadPoolExecutor.awaitTermination(60, TimeUnit.SECONDS)) {
        threadPoolExecutor.shutdownNow();
    }
} catch (InterruptedException e) {
    threadPoolExecutor.shutdownNow();
}

這個示例中,我們創建了一個ThreadPoolExecutor實例,設置了核心線程數、最大線程數、空閑線程存活時間等參數。然后,我們提交了20個任務到ThreadPoolExecutor,并等待所有任務執行完成。最后,我們關閉了ThreadPoolExecutor

注意:在實際應用中,你可能需要根據具體需求調整corePoolSizemaximumPoolSizekeepAliveTime等參數。此外,你還可以使用Executors類提供的工廠方法(如newFixedThreadPool()newCachedThreadPool()等)來創建ThreadPoolExecutor實例,而無需手動設置這些參數。

0
洛隆县| 徐闻县| 石屏县| 公主岭市| 黄浦区| 安平县| 麻栗坡县| 朝阳县| 乌苏市| 宿州市| 澄迈县| 玉山县| 米易县| 石渠县| 比如县| 永胜县| 台江县| 红河县| 始兴县| 鄂州市| 定南县| 乌兰察布市| 西丰县| 大厂| 惠来县| 南京市| 泾源县| 茂名市| 富锦市| 永宁县| 金溪县| 宁蒗| 钟祥市| 米林县| 二连浩特市| 河津市| 宜黄县| 云阳县| 延安市| 桃园县| 霍州市|