摘要:接口用于提交任務接口繼承了接口設置線程的狀態,還沒執行的線程會被中斷設置線程的狀態,嘗試停止正在進行的線程當調用或方法后返回為當調用方法后,并且所有提交的任務完成后返回為當調用方法后,成功停止后返回為當前線程阻塞,直到線程執行完時間到被中斷
Executor接口
void execute(Runnable command)//用于提交command任務ExecutorService接口
繼承了Executor接口
//設置線程的狀態,還沒執行的線程會被中斷 void shutdown(); //設置線程的狀態,嘗試停止正在進行的線程 ListshutdownNow(); //當調用shutdown()或shutdownNow()方法后返回為true boolean isShutdown(); //當調用shutdown()方法后,并且所有提交的任務完成后返回為true //當調用shutdownNow()方法后,成功停止后返回為true; boolean isTerminated(); //當前線程阻塞,直到線程執行完、時間到、被中斷 boolean awaitTermination(long timeout, TimeUnit unit) throws InterruptedException; //提交一個Callable任務 Future submit(Callable task); //提交一個Runnable任務,因為Runnable沒有返回指,所以第二個參數是用來返回值 Future submit(Runnable task, T result); //提交一個Runnable任務 Future> submit(Runnable task); //執行所有任務 List > invokeAll(Collection extends Callable > tasks) throws InterruptedException; //執行所有任務,有過期時間 List > invokeAll(Collection extends Callable > tasks, long timeout, TimeUnit unit) throws InterruptedException; //有一個任務結束就可以返回 T invokeAny(Collection extends Callable > tasks, long timeout, TimeUnit unit) throws InterruptedException, ExecutionException, TimeoutException; //有一個任務結束就可以返回,有過期時間 T invokeAny(Collection extends Callable > tasks, long timeout, TimeUnit unit) throws InterruptedException, ExecutionException, TimeoutException;
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/75686.html
摘要:系統預定了幾個線程池,不過建議手動創建,以防止錯誤創建消耗資源,比如創建太多線程或者固定線程數量,無界隊列固定線程數量,數量為,無界隊列,會按順序執行不限制線程數量,使用隊列,使用于短任務基于用于周期性執行任務示例第一個是,第二個是第一 系統預定了幾個線程池,不過建議手動創建,以防止錯誤創建消耗資源,比如創建太多線程或者OOM FixedThreadPool 固定線程數量,無界隊列 p...
摘要:有三種狀態運行關閉終止。類類,提供了一系列工廠方法用于創建線程池,返回的線程池都實現了接口。線程池的大小一旦達到最大值就會保持不變,在提交新任務,任務將會進入等待隊列中等待。此線程池支持定時以及周期性執行任務的需求。 這是java高并發系列第19篇文章。 本文主要內容 介紹Executor框架相關內容 介紹Executor 介紹ExecutorService 介紹線程池ThreadP...
摘要:抽象類,實現了的接口。將任務封裝成提交任務主要方法在任務是否超時超時時間任務書用于存放結果的,先完成的放前面。 AbstractExecutorService抽象類,實現了ExecutorService的接口。 newTaskFor 將任務封裝成FutureTask protected RunnableFuture newTaskFor(Runnable runnable, T va...
摘要:線程的啟動與銷毀都與本地線程同步。操作系統會調度所有線程并將它們分配給可用的。框架的成員主要成員線程池接口接口接口以及工具類。創建單個線程的接口與其實現類用于表示異步計算的結果。參考書籍并發編程的藝術方騰飛魏鵬程曉明著 在java中,直接使用線程來異步的執行任務,線程的每次創建與銷毀需要一定的計算機資源開銷。每個任務創建一個線程的話,當任務數量多的時候,則對應的創建銷毀開銷會消耗大量...
摘要:示例執行一批任務,然后消費執行結果代碼如下跟著阿里學并發,微信公眾號輸出代碼中傳入了一批任務進行處理,最終將所有處理完成的按任務完成的先后順序傳遞給進行消費了。 這是java高并發系列第20篇文章。 本文內容 ExecutorCompletionService出現的背景 介紹CompletionService接口及常用的方法 介紹ExecutorCompletionService類及...
閱讀 1619·2021-11-11 10:59
閱讀 2625·2021-09-04 16:40
閱讀 3650·2021-09-04 16:40
閱讀 2979·2021-07-30 15:30
閱讀 1615·2021-07-26 22:03
閱讀 3164·2019-08-30 13:20
閱讀 2225·2019-08-29 18:31
閱讀 439·2019-08-29 12:21