Java多執行緒(七)-執行緒池
阿新 • • 發佈:2021-10-04
八.執行緒池
對於經常建立,使用量大的資源,如併發情況下的執行緒,對效能影響很大。為解決此問題,可提前建立多個執行緒,放入執行緒池中,使用時直接獲取,使用之後放回池中。
java jdk提供了ExecutorService和Executors
ExecutorService:
void execute(Runnable command):執行命令,沒有返回值。(Runnable)
<T>Future<T>submit(Callable<T> task):執行任務,有返回值。(Callable)
void shutdown():關閉連線池
Executors: 執行緒池的工具類,用於建立並返回不同型別的執行緒池
public class Pool implements Runnable{ @Override public void run() { System.out.println(Thread.currentThread().getName()); } public static void main(String[] args) { // 建立執行緒池,大小為6 ExecutorService executorService = Executors.newFixedThreadPool(6); // 執行 executorService.execute(new Pool()); executorService.execute(new Pool()); executorService.execute(new Pool()); // 關閉 executorService.shutdown(); } }