溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java線程池中類的繼承實例分析

發(fā)布時間:2021-05-06 13:57:36 來源:億速云 閱讀:187 作者:小新 欄目:編程語言

這篇文章主要介紹java線程池中類的繼承實例分析,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

常用的java框架有哪些

1.SpringMVC,Spring Web MVC是一種基于Java的實現(xiàn)了Web MVC設計模式的請求驅動類型的輕量級Web框架。2.Shiro,Apache Shiro是Java的一個安全框架。3.Mybatis,MyBatis 是支持普通 SQL查詢,存儲過程和高級映射的優(yōu)秀持久層框架。4.Dubbo,Dubbo是一個分布式服務框架。5.Maven,Maven是個項目管理和構建自動化工具。6.RabbitMQ,RabbitMQ是用Erlang實現(xiàn)的一個高并發(fā)高可靠AMQP消息隊列服務器。7.Ehcache,EhCache 是一個純Java的進程內緩存框架。

1、說明

Java中的線程池核心實現(xiàn)類是ThreadPoolExecutor

Executor:只提供執(zhí)行任務的接口,用戶不必關注如何制作線程,如何制作線程,只需提供Runnable對象。

ExecutorService:在執(zhí)行任務的基礎上,追加了提交任務、線程池生命周期的管理等接口。

AbstractExecutorService:抽象系列執(zhí)行任務的過程,保證下層的實現(xiàn)只需關注執(zhí)行任務的方法即可。

ThreadPoolexecutor:一方面維持自己的生命周期,另一方面管理課程和任務,兩者良好結合實行并行任務。

2、實例

// ctl:高三位表示線程池運行狀態(tài),低29位表示線程池線程運行數(shù)量
// 一個變量存儲兩個值的好處是不必費心思(比如加鎖)去維護兩個狀態(tài)的一致性
private final AtomicInteger ctl = new AtomicInteger(ctlOf(RUNNING, 0));
 
// 獲取線程池當前的運行狀態(tài)(~:按位取反,即0變成1,1變成0。)
private static int runStateOf(int c)     { return c & ~CAPACITY; }
// 獲取線程池當前運行的線程數(shù)量
private static int workerCountOf(int c)  { return c & CAPACITY; }
// 通過線程池狀態(tài)和運行的線程數(shù)量獲取ctl
private static int ctlOf(int rs, int wc) { return rs | wc; }

以上是“java線程池中類的繼承實例分析”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI