日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

第 5-3 课:线程池——Executors + 面试题

發布時間:2025/3/11 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第 5-3 课:线程池——Executors + 面试题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

線程池的創建分為兩種方式:ThreadPoolExecutor 和 Executors,上一節學習了 ThreadPoolExecutor 的使用方式,本節重點來看 Executors 是如何創建線程池的。
Executors 可以創建以下六種線程池。

  • FixedThreadPool(n):創建一個數量固定的線程池,超出的任務會在隊列中等待空閑的線程,可用于控制程序的最大并發數。
  • CachedThreadPool():短時間內處理大量工作的線程池,會根據任務數量產生對應的線程,并試圖緩存線程以便重復使用,如果限制 60 秒沒被使用,則會被移除緩存。
  • SingleThreadExecutor():創建一個單線程線程池。
  • ScheduledThreadPool(n):創建一個數量固定的線程池,支持執行定時性或周期性任務。
  • SingleThreadScheduledExecutor():此線程池就是單線程的 newScheduledThreadPool。
  • WorkStealingPool(n):Java 8 新增創建線程池的方法,創建時如果不設置任何參數,則以當前機器處理器個數作為線程個數,此線程池會并行處理任務,不能保證執行順序。

下面分別來看以上六種線程池的具體代碼使用。

FixedThreadPool 使用

創建固定個數的線程池,具體示例如下:

ExecutorService fixedThreadPool = Executors.newFixedThreadPool(2); for (int i = 0; i < 3; i++) {fixedThreadPool.execute(() -> {

總結

以上是生活随笔為你收集整理的第 5-3 课:线程池——Executors + 面试题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。