1. 程式人生 > >java中常見的執行緒池(不看後悔,一看必懂)

java中常見的執行緒池(不看後悔,一看必懂)

Executor介面表示執行緒池,它的execute(Runnable task)方法用來執行Runnable型別的任務,ExecutorService是Executor的子介面,聲明瞭管理執行緒池的一些方法

Java.util.concurrent.Executors類包含了一些靜態方法,它們負責生成各種型別的執行緒池例項(ExecutorService)

 

①newSingleThreadExecutor-->單執行緒執行緒池

單個執行緒的執行緒池,即執行緒池中每次只有一個執行緒工作,單執行緒序列執行任務

②newFixedThreadExecutor(n)-->固定數量執行緒池

固定數量的執行緒池,每提交一個任務就是一個執行緒,直到達到執行緒池的最大數量,然後後面進入等待佇列直到前面的任務完成才繼續執行

③newCacheThreadExecutor(推薦使用)-->快取執行緒池

可快取執行緒池,當執行緒池大小超過了處理任務所需的執行緒,那麼就會回收部分空閒(一般是60秒無執行)的執行緒,當有任務來時,又智慧的新增新執行緒來執行。

④newScheduleThreadExecutor

大小無限制的執行緒池,支援定時和週期性的執行執行緒