浅析Java线程池 ExecutorService
生活随笔
收集整理的這篇文章主要介紹了
浅析Java线程池 ExecutorService
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
ExecutorService是Java中對線程池定義的一個接口,它java.util.concurrent包中.
創建一個什么樣的ExecutorService的實例(即線程池)需要g根據具體應用場景而定,不過Java給我們提供了一個Executors工廠類,它可以幫助我們很方便的創建各種類型ExecutorService線程池,Executors一共可以創建下面這四類線程池:
newCachedThreadPool 創建一個可緩存線程池,如果線程池長度超過處理需要,可靈活回收空閑線程,若無可回收,則新建線程。
newFixedThreadPool 創建一個定長線程池,可控制線程最大并發數,超出的線程會在隊列中等待。
newScheduledThreadPool 創建一個定長線程池,支持定時及周期性任務執行。
newSingleThreadExecutor 創建一個單線程化的線程池,它只會用唯一的工作線程來執行任務,保證所有任務按照指定順序(FIFO, LIFO, 優先級)執行。
注:Executors只是一個工廠類,它所有的方法返回的都是ThreadPoolExecutor、ScheduledThreadPoolExecutor這兩個類的實例。
簡單使用
ExecutorService executorService = Executors.newFixedThreadPool(10);executorService.execute(new Runnable() { public void run() {System.out.println("Asynchronous task"); } });executorService.shutdown();總結
以上是生活随笔為你收集整理的浅析Java线程池 ExecutorService的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Mysql加锁过程详解(2)-关于mys
- 下一篇: python调用钉钉API发送消息