摘要:本人郵箱歡迎轉(zhuǎn)載轉(zhuǎn)載請(qǐng)注明網(wǎng)址代碼已經(jīng)全部托管有需要的同學(xué)自行下載引言自動(dòng)的兩個(gè)線程池講完今天就講跟他們有關(guān)的一個(gè)工具類吧理論僅僅是一個(gè)線程池的工具類它無(wú)法實(shí)例話包含都是靜態(tài)方法或靜態(tài)類創(chuàng)建一個(gè)指定線程數(shù)量的線程池創(chuàng)建一個(gè)可以自定義的線
引言本人郵箱:
歡迎轉(zhuǎn)載,轉(zhuǎn)載請(qǐng)注明網(wǎng)址 http://blog.csdn.net/tianshi_kco
github: https://github.com/kco1989/kco
代碼已經(jīng)全部托管github有需要的同學(xué)自行下載
java 自動(dòng)的兩個(gè)線程池講完,今天就講跟他們有關(guān)的一個(gè)工具類吧--Executors
理論Executors 僅僅是一個(gè)線程池的工具類,它無(wú)法實(shí)例話,包含都是靜態(tài)方法或靜態(tài)類.
newFixedThreadPool(int nThreads) 創(chuàng)建一個(gè)指定線程數(shù)量的線程池t nThreads, ThreadFactory threadFactory)` 創(chuàng)建一個(gè)可以自定義的線程工廠的指定線程數(shù)量的線程池
newSingleThreadExecutor() 創(chuàng)建一個(gè)只有一個(gè)線程的線程池
newSingleThreadExecutor(ThreadFactory threadFactory) 創(chuàng)建一個(gè)可以自定義線程工程的且只有一個(gè)線程的線程池
newCachedThreadPool 創(chuàng)建一個(gè)可以緩存的線程池,它的源碼其實(shí)是return new ThreadPoolExecutor(0, Integer.MAX_VALUE,60L, TimeUnit.SECONDS,new SynchronousQueue
newCachedThreadPool(ThreadFactory threadFactory) 跟上面一樣,只是多了可以自定義線程工廠
newSingleThreadScheduledExecutor() 創(chuàng)建一個(gè)只有一個(gè)線程的任務(wù)調(diào)度線程池.
newSingleThreadScheduledExecutor(ThreadFactory threadFactory) 創(chuàng)建一個(gè)只有一個(gè)線程且能自定義線程工程的任務(wù)調(diào)度線程池
newScheduledThreadPool(int corePoolSize) 創(chuàng)建指定線程數(shù)量的任務(wù)調(diào)度線程池
newScheduledThreadPool(int corePoolSize, ThreadFactory threadFactory) 創(chuàng)建一個(gè)可以指定數(shù)量寫自定義線程工程的任務(wù)調(diào)度線程池
除此之外,Executors還提供了讓Runnable轉(zhuǎn)化為Callable的適配器
例子這個(gè)章節(jié)就不寫例子,前面學(xué)了線程池的知識(shí)之后,直接看Executors源碼,就感覺比較清晰
打賞如果覺得我的文章寫的還過(guò)得去的話,有錢就捧個(gè)錢場(chǎng),沒(méi)錢給我捧個(gè)人場(chǎng)(幫我點(diǎn)贊或推薦一下)
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/70010.html
摘要:方法接受一個(gè)生產(chǎn)者作為參數(shù),返回一個(gè)對(duì)象,該對(duì)象完成異步執(zhí)行后會(huì)讀取調(diào)用生產(chǎn)者方法的返回值。該方法接收一個(gè)對(duì)象構(gòu)成的數(shù)組,返回由第一個(gè)執(zhí)行完畢的對(duì)象的返回值構(gòu)成的。 一、Future 接口 在Future中觸發(fā)那些潛在耗時(shí)的操作把調(diào)用線程解放出來(lái),讓它能繼續(xù)執(zhí)行其他有價(jià)值的工作,不再需要呆呆等待耗時(shí)的操作完成。打個(gè)比方,你可以把它想象成這樣的場(chǎng)景:你拿了一袋子衣服到你中意的干洗店去洗。...
摘要:哪吒社區(qū)技能樹打卡打卡貼函數(shù)式接口簡(jiǎn)介領(lǐng)域優(yōu)質(zhì)創(chuàng)作者哪吒公眾號(hào)作者架構(gòu)師奮斗者掃描主頁(yè)左側(cè)二維碼,加入群聊,一起學(xué)習(xí)一起進(jìn)步歡迎點(diǎn)贊收藏留言前情提要無(wú)意間聽到領(lǐng)導(dǎo)們的談話,現(xiàn)在公司的現(xiàn)狀是碼農(nóng)太多,但能獨(dú)立帶隊(duì)的人太少,簡(jiǎn)而言之,不缺干 ? 哪吒社區(qū)Java技能樹打卡?【打卡貼 day2...
摘要:整個(gè)包,按照功能可以大致劃分如下鎖框架原子類框架同步器框架集合框架執(zhí)行器框架本系列將按上述順序分析,分析所基于的源碼為。后,根據(jù)一系列常見的多線程設(shè)計(jì)模式,設(shè)計(jì)了并發(fā)包,其中包下提供了一系列基礎(chǔ)的鎖工具,用以對(duì)等進(jìn)行補(bǔ)充增強(qiáng)。 showImg(https://segmentfault.com/img/remote/1460000016012623); 本文首發(fā)于一世流云專欄:https...
摘要:注意線程與本地操作系統(tǒng)的線程是一一映射的。固定線程數(shù)的線程池提供了兩種創(chuàng)建具有固定線程數(shù)的的方法,固定線程池在初始化時(shí)確定其中的線程總數(shù),運(yùn)行過(guò)程中會(huì)始終維持線程數(shù)量不變。 showImg(https://segmentfault.com/img/bVbhK58?w=1920&h=1080); 本文首發(fā)于一世流云專欄:https://segmentfault.com/blog... ...
摘要:并不會(huì)為每個(gè)任務(wù)都創(chuàng)建工作線程,而是根據(jù)實(shí)際情況構(gòu)造線程池時(shí)的參數(shù)確定是喚醒已有空閑工作線程,還是新建工作線程。 showImg(https://segmentfault.com/img/bVbiYSP?w=1071&h=707); 本文首發(fā)于一世流云的專欄:https://segmentfault.com/blog... 一、引言 前一章——Fork/Join框架(1) 原理,我們...
閱讀 2578·2021-11-23 09:51
閱讀 3126·2019-08-30 15:54
閱讀 1080·2019-08-30 14:14
閱讀 3551·2019-08-30 13:59
閱讀 1410·2019-08-29 17:09
閱讀 1470·2019-08-29 16:24
閱讀 2855·2019-08-29 15:43
閱讀 917·2019-08-29 12:45