【并發(fā)學(xué)習(xí)二】ThreadPoolExecutor

Java線程池

三大好處:

1.降低資源消耗带欢;2.提高響應(yīng)速度荒辕;3.提高線程的可管理性兼搏;

ThreadPoolExecutor:

new ThreadPoolExecutor (

corePoolSize,? ? ? ? //線程池基本大小

maximumPoolSize,? ? ?//線程池最大大小

keepAliveTime,? ? ? ? //線程活動保持時間

timeUnit,? ? ? ? //時間單位

runnableTaskQueue,? ?//任務(wù)隊列症虑,可選ArrayBlockingQueue,LinkedBlockingQueue,SynchronousQueue,PriorityBlockingQueue。建議使用有界隊列勇皇,增加系統(tǒng)穩(wěn)定性和預(yù)警能力罩句。無界隊列可能引起內(nèi)存撐爆,影響其他應(yīng)用敛摘。

threadFactory,? ?//創(chuàng)建線程的工廠

?handler);? ? ? //飽和策略门烂,有:CallerRunsPolicy,DiscardOldestPolicy,DiscardPolicy,或者自定義實現(xiàn)。

向線程池提交任務(wù):

1.execute(),輸入一個Runnable兄淫,無返回值屯远;

2.submit(),返回一個Future,通過future的get方法阻塞直到任務(wù)完成捕虽;

合理配置線程池:

1.根據(jù)任務(wù)性質(zhì):

? ? ? ? ? ?CPU密集型:配置盡可能少的線程數(shù)慨丐,一般Ncpu+1個;

? ? ? ? ? ?IO密集型:盡可能多配置線程數(shù)泄私,如2*Ncpu個房揭;

? ? ? ? ? ?混合型:能拆分盡量拆分挨措。

(ps:通過Runtime.getRuntime().availableProcessors()方法獲得當(dāng)前設(shè)備的CPU數(shù))

2.根據(jù)任務(wù)優(yōu)先級:? 可以用PriorityBlockingQueue來處理。

3.根據(jù)任務(wù)執(zhí)行時間:? 交給不同規(guī)模線程池處理崩溪,或者采用優(yōu)先級隊列。

4.其他資源(如數(shù)據(jù)庫)的依賴性:如提交sql后等待數(shù)據(jù)庫返回結(jié)果時間較長斩松,則可以設(shè)置較大的線程數(shù)伶唯;

線程池的監(jiān)控

幾個常用參數(shù):

taskCount? ? 需要執(zhí)行任務(wù)數(shù);

completedTaskCount? ? 已完成任務(wù)數(shù)惧盹;

largestPoolSize? ? ?曾經(jīng)創(chuàng)建過的最大線程數(shù)乳幸;

getPoolSize? ? ? 線程池中線程數(shù)量;

getActiveCount? ? 獲取活動的線程數(shù)钧椰;



參考資料:

1. 《Java線程池的分析和使用》? 并發(fā)編程網(wǎng) http://ifeve.com/java-threadpool/

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末粹断,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子嫡霞,更是在濱河造成了極大的恐慌瓶埋,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,198評論 6 514
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件诊沪,死亡現(xiàn)場離奇詭異养筒,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)端姚,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,334評論 3 398
  • 文/潘曉璐 我一進(jìn)店門晕粪,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人渐裸,你說我怎么就攤上這事巫湘。” “怎么了昏鹃?”我有些...
    開封第一講書人閱讀 167,643評論 0 360
  • 文/不壞的土叔 我叫張陵尚氛,是天一觀的道長。 經(jīng)常有香客問我洞渤,道長怠褐,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,495評論 1 296
  • 正文 為了忘掉前任您宪,我火速辦了婚禮奈懒,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘宪巨。我一直安慰自己磷杏,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 68,502評論 6 397
  • 文/花漫 我一把揭開白布捏卓。 她就那樣靜靜地躺著极祸,像睡著了一般慈格。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上遥金,一...
    開封第一講書人閱讀 52,156評論 1 308
  • 那天浴捆,我揣著相機(jī)與錄音,去河邊找鬼稿械。 笑死选泻,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的美莫。 我是一名探鬼主播页眯,決...
    沈念sama閱讀 40,743評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼厢呵!你這毒婦竟也來了窝撵?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,659評論 0 276
  • 序言:老撾萬榮一對情侶失蹤襟铭,失蹤者是張志新(化名)和其女友劉穎碌奉,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體寒砖,經(jīng)...
    沈念sama閱讀 46,200評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡道批,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,282評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了入撒。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片隆豹。...
    茶點故事閱讀 40,424評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖茅逮,靈堂內(nèi)的尸體忽然破棺而出璃赡,到底是詐尸還是另有隱情,我是刑警寧澤献雅,帶...
    沈念sama閱讀 36,107評論 5 349
  • 正文 年R本政府宣布碉考,位于F島的核電站,受9級特大地震影響挺身,放射性物質(zhì)發(fā)生泄漏侯谁。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,789評論 3 333
  • 文/蒙蒙 一章钾、第九天 我趴在偏房一處隱蔽的房頂上張望墙贱。 院中可真熱鬧,春花似錦贱傀、人聲如沸惨撇。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,264評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽魁衙。三九已至报腔,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間剖淀,已是汗流浹背纯蛾。 一陣腳步聲響...
    開封第一講書人閱讀 33,390評論 1 271
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留纵隔,地道東北人翻诉。 一個月前我還...
    沈念sama閱讀 48,798評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像巨朦,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子剑令,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,435評論 2 359

推薦閱讀更多精彩內(nèi)容