成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Executors線程池核心參數(shù)及線程增減

elina / 2017人閱讀

摘要:伸縮流程主要是三個變量。也就是說就是線程池大小,是線程池的一種補救措施,即任務(wù)量突然過大時的一種補救措施。只是一個用來起記錄作用的變量,用來記錄線程池中曾經(jīng)有過的最大線程數(shù)目,跟線程池的容量沒有任何關(guān)系。參考聊聊并發(fā)三線程池的分析和使用

伸縮流程

主要是corePoolSize、maximumPoolSize、largestPoolSize三個變量。

比喻

  假如有一個工廠,工廠里面有10個工人,每個工人同時只能做一件任務(wù)。

  因此只要當10個工人中有工人是空閑的,來了任務(wù)就分配給空閑的工人做;

  當10個工人都有任務(wù)在做時,如果還來了任務(wù),就把任務(wù)進行排隊等待;

  如果說新任務(wù)數(shù)目增長的速度遠遠大于工人做任務(wù)的速度,那么此時工廠主管可能會想補救措施,比如重新招4個臨時工人進來;

  然后就將任務(wù)也分配給這4個臨時工人做;

  如果說著14個工人做任務(wù)的速度還是不夠,此時工廠主管可能就要考慮不再接收新的任務(wù)或者拋棄前面的一些任務(wù)了。

  當這14個工人當中有人空閑時,而新任務(wù)增長的速度又比較緩慢,工廠主管可能就考慮辭掉4個臨時工了,只保持原來的10個工人,畢竟請額外的工人是要花錢的。

解讀

  這個例子中的corePoolSize就是10,而maximumPoolSize就是14(10+4)。

  也就是說corePoolSize就是線程池大小,maximumPoolSize是線程池的一種補救措施,即任務(wù)量突然過大時的一種補救措施。

  largestPoolSize只是一個用來起記錄作用的變量,用來記錄線程池中曾經(jīng)有過的最大線程數(shù)目,跟線程池的容量沒有任何關(guān)系。

參考

聊聊并發(fā)(三)Java線程池的分析和使用

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/65839.html

相關(guān)文章

  • Java線程簡單總結(jié)

    摘要:本文主要內(nèi)容為簡單總結(jié)中線程池的相關(guān)信息。方法簇方法簇用于創(chuàng)建固定線程數(shù)的線程池。三種常見線程池的對比上文總結(jié)了工具類創(chuàng)建常見線程池的方法,現(xiàn)對三種線程池區(qū)別進行比較。 概述 線程可認為是操作系統(tǒng)可調(diào)度的最小的程序執(zhí)行序列,一般作為進程的組成部分,同一進程中多個線程可共享該進程的資源(如內(nèi)存等)。在單核處理器架構(gòu)下,操作系統(tǒng)一般使用分時的方式實現(xiàn)多線程;在多核處理器架構(gòu)下,多個線程能夠...

    CoorChice 評論0 收藏0
  • Java ThreadPoolExecutor 線程

    摘要:是一個中的工具類提供工廠方法來創(chuàng)建不同類型的線程池從上圖中也可以看出的創(chuàng)建線程池的方法創(chuàng)建出來的線程池都實現(xiàn)了接口常用方法有以下幾個創(chuàng)建固定數(shù)目線程的線程池超出的線程會在隊列中等待創(chuàng)建一個可緩存線程池如果線程池長度超過處理需要可靈活回收空閑 Executors Executors 是一個Java中的工具類. 提供工廠方法來創(chuàng)建不同類型的線程池. showImg(https://segm...

    CollinPeng 評論0 收藏0
  • 線程,這一篇或許就夠了

    摘要:創(chuàng)建方法最大線程數(shù)即源碼單線程化的線程池有且僅有一個工作線程執(zhí)行任務(wù)所有任務(wù)按照指定順序執(zhí)行,即遵循隊列的入隊出隊規(guī)則創(chuàng)建方法源碼還有一個結(jié)合了和,就不介紹了,基本不用。 *本篇文章已授權(quán)微信公眾號 guolin_blog (郭霖)獨家發(fā)布 為什么用線程池 創(chuàng)建/銷毀線程伴隨著系統(tǒng)開銷,過于頻繁的創(chuàng)建/銷毀線程,會很大程度上影響處理效率 >例如: > >記創(chuàng)建線程消耗時間T1,執(zhí)行...

    UsherChen 評論0 收藏0
  • Android線程封裝庫

    摘要:如果線程池中的線程數(shù)量已經(jīng)超過核心線程數(shù),這時候任務(wù)就會被插入到任務(wù)隊列中排隊等待執(zhí)行。如果線程池中的數(shù)量達到了所規(guī)定的最大值,那么就會拒絕執(zhí)行此任務(wù),這時候就會調(diào)用中的方法來通知調(diào)用者。 目錄介紹 1.遇到的問題和需求 1.1 遇到的問題有哪些 1.2 遇到的需求 1.3 多線程通過實現(xiàn)Runnable弊端 1.4 為什么要用線程池 2.封裝庫具有的功能 2.1 常用的功能 3.封...

    Amos 評論0 收藏0
  • java并發(fā)編程學習2--Future

    摘要:一個線程池包含很多準備運行的空閑線程,每當執(zhí)行完畢后,線程不會死亡而是回到線程池準備為下一個請求提供服務(wù)。另一個使用線程池的理由是減少并發(fā)線程數(shù)。創(chuàng)建大量線程會大大降低性能甚至拖垮虛擬機。 【Future的概念 interface Future ,表示異步計算的結(jié)果,F(xiàn)uture有個get方法而獲取結(jié)果只有在計算完成時獲取,否則會一直阻塞直到任務(wù)轉(zhuǎn)入完成狀態(tài),然后會返回結(jié)果或者拋出異常...

    weizx 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<