线程池的学习
文章目錄
- 線程池原理
- JDK 1.5 之后提供的線程池工廠類
- 線程池的使用步驟
線程池原理
1.創建多個線程對象,存放到集合中,集合可以是 ArrayList 或者 LinkedList
2.從集合中取出一個線程對象,執行指定的任務
3.一個線程對象只能執行一個任務,所以使用 remove(int index) 移出線程對象,任務執行完后,要放回集合中
4.任務可以放在一個隊列中排隊,逐個執行
JDK 1.5 之后提供的線程池工廠類
線程池工廠類 java.util.concurrent.Executors 有個靜態方法 public static ExecutorService newFixedThreadPool?(int nThreads),該方法可以創建一個重用固定線程數的線程池,返回的是接口 ExecutorService 的實現類對象。
接口 java.util.concurrent.ExecutorService 有個方法 submit?(Runnable task),這個方法可以從線程池獲取線程后開啟線程,執行 task 中的任務。另外有個方法 shutdown() 可以銷毀線程池(不建議執行)。
線程池的使用步驟
1.使用線程池工廠類創建一個線程池
2.定義一個類,實現接口 Runnable,實現方法 run,定義線程任務
3.構造一個 Runnable 實現類的實例對象
4.調用方法 submit,傳遞 Runnable 實現類的實例對象,就會自動獲取線程,執行其中的方法 run
總結
- 上一篇: c在linux怎么编译(c 在linux
- 下一篇: 线程同步的学习