<pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

          <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

          <p id="bbfd9"></p>

          <p id="bbfd9"><cite id="bbfd9"></cite></p>

            <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

            <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
            <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
            java語言

            Java中Executor接口用法

            時間:2025-04-06 05:36:21 java語言 我要投稿
            • 相關推薦

            Java中Executor接口用法大全

              本文實例講述了Java中Executor接口用法。分享給大家供大家參考。具體如下:

              1.Java中Executor接口的定義

              public interface Executor { void execute(Runnable command);}

              2.Executors以下靜態工廠方法創建一個線程池:

              a) newFixedThreadPool:創建一個定長的線程池。達到最大線程數后,線程數不再增長。

              如果一個線程由于非預期Exception而結束,線程池會補充一個新的線程。

              b) newCachedThreadPool:創建一個可緩存的線程池。當池長度超過處理需求時,可以回收空閑的線程。

              c) newSingleThreadPool:創建一個單線程executor。

              d) newScheduledThreadPool:創建一個定長的線程池,而且支持定時的以及周期性的任務執行。

              類似于Timer。但是,Timer是基于絕對時間,對系統時鐘的改變是敏感的,而ScheduledThreadPoolExecutor只支持相對時間。

              3.對比Timer類的應用總結

              1) Timer是創建唯一的線程來執行所有的timer任務。如果一個任務超時了,會導致其他的TimerTask時間準確性出問題。

              2) 如果TimerTask拋出uncheck 異常,Timer將會產生無法預料的行為。因此,ScheduledThreadPoolExecutor可以完全代替Timer。

              3) 為了解決執行服務的生命周期問題,ExecutorService接口擴展了Executor。線程池將包括3個狀態:running,shutting down,terminated。

              4.Callable和Future

              因為Runnable沒有返回值,并且不能拋出checked異常,所以Callable是更佳的抽象。(Callable表示無返回值的任務)。

              Future描述了任務的生命周期,并提供了相關的方法來獲取任務的結果、取消任務以及檢查任務完成或則是否取消。

              5.CompletionService整合了Executor和BlockingQueue的功能。

              其take和poll可以阻塞的獲取完成的任務。

              希望本文所述對大家的java程序設計有所幫助。

            【Java中Executor接口用法】相關文章:

            Java中接口的知識匯總07-29

            深入了解Java中的接口03-27

            java中set接口的使用方法07-09

            講述java中enum的用法04-10

            Java接口介紹05-08

            java中spring的幾個重要類和接口04-05

            Java中接口和抽象類的異同08-12

            Java中的多態用法實例分析04-04

            Java圖形用戶接口03-19

                    <pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

                    <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

                    <p id="bbfd9"></p>

                    <p id="bbfd9"><cite id="bbfd9"></cite></p>

                      <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

                      <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
                      <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
                      飘沙影院