線程池是一種有效管理和復用線程資源的機制。在Java中,線程池的創(chuàng)建有四種方式:
1.Executors類的newFixedThreadPool方法
該方法返回固定大小的線程池,一旦所有線程都處于活動狀態(tài),新的任務將等待空閑線程出現(xiàn)。
2.Executors類的newCachedThreadPool方法
該方法返回一個可緩存線程池,如果線程池的當前規(guī)模超過了處理需求,那么將回收空閑的線程,反之則擴展線程池。
3.Executors類的newSingleThreadExecutor方法
該方法返回一個只有一個線程的線程池,如果該線程因為異常結束而退出,那么仍然會有一個線程代替它。
4.ThreadPoolExecutor構造函數(shù)
通過ThreadPoolExecutor的構造函數(shù)可以自定義線程池的各種參數(shù),例如核心線程數(shù)、最大線程數(shù)、任務隊列等。
閱讀全文