【Java】【多執行緒】執行緒池簡述

love_Aym發表於2018-04-17

一、執行緒池概述

  • 程式啟動一個新執行緒成本是比較高的,因為它涉及到要與作業系統進行互動。而使用執行緒池可以很好的提高效能,尤其是當程式中要建立大量生存期很短的執行緒時,更應該考慮使用執行緒池。
  • 執行緒池裡的每一個執行緒程式碼結束後,並不會死亡,而是再次回到執行緒池中成為空閒狀態,等待下一個物件來使用。
  • 在JDK5之前,我們必須手動實現自己的執行緒池,從JDK5開始,Java內建支援執行緒池。
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class Demo5_Executors {

	/**
	 * public static ExecutorService newFixedThreadPool(int nThreads)
	 * public static ExecutorService newSingleThreadExecutor()
	 */
	public static void main(String[] args) {
		ExecutorService pool = Executors.newFixedThreadPool(2);//建立執行緒池
		pool.submit(new MyRunnable());	//將執行緒放進池子裡並執行
		pool.submit(new MyRunnable());
		
		pool.shutdown();	//關閉執行緒池
	}
}


相關文章