1. 程式人生 > >Executors執行緒池的使用

Executors執行緒池的使用

Java通過Executors提供四種執行緒池,分別為:
newCachedThreadPool建立一個可快取執行緒池,如果執行緒池長度超過處理需要,可靈活回收空閒執行緒,若無可回收,則新建執行緒。
newFixedThreadPool 建立一個定長執行緒池,可控制執行緒最大併發數,超出的執行緒會在佇列中等待。
newScheduledThreadPool 建立一個定長執行緒池,支援定時及週期性任務執行。
newSingleThreadExecutor 建立一個單執行緒化的執行緒池,它只會用唯一的工作執行緒來執行任務,
保證所有任務按照指定順序(FIFO, LIFO, 優先順序)執行。

 延遲執行任務:

ScheduledExecutorService newScheduledThreadPool = Executors.newScheduledThreadPool(2);
//延遲三秒執行
 newScheduledThreadPool.schedule(執行緒a,3, TimeUnit.SECONDS);
 
執行緒a可以是實現了Runnable介面的類,也可以是繼承了Thread類的子類