国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

怎么讓keep-alive緩存的組件更新 線程池隊列大小設(shè)置?

線程池隊列大小設(shè)置?一、ThreadPoolExecutor的重要參數(shù)CorePoolSize:核心線程的數(shù)量。核心線程會一直存活,沒有任務(wù)要及時執(zhí)行。當線程數(shù)小于核心線程數(shù)時,即使有空閑線程,線程池

線程池隊列大小設(shè)置?

一、ThreadPoolExecutor的重要參數(shù)

CorePoolSize:核心線程的數(shù)量。核心線程會一直存活,沒有任務(wù)要及時執(zhí)行。當線程數(shù)小于核心線程數(shù)時,即使有空閑線程,線程池也會優(yōu)先創(chuàng)建新線程進行處理。當allowCoreThreadTimeouttrue(默認為false)被設(shè)置時,核心線程將隨著時間的推移而關(guān)閉。

QueueCapacity:任務(wù)隊列容量(阻塞隊列)

當核心線程的數(shù)量達到最大值時,新任務(wù)將排隊等待執(zhí)行。

MaxPoolSize:最大線程數(shù)

當線程數(shù)為gtcorePoolSize且任務(wù)隊列已滿時。線程池創(chuàng)建新的線程來處理任務(wù)。

當線程數(shù)為maxPoolSize且任務(wù)隊列已滿時,線程池將拒絕處理任務(wù)并拋出異常。

KeepAliveTime:線程空閑時間

當線程的空閑時間達到keepAliveTime時,線程將退出,直到線程數(shù)達到corePoolSize。

如果allowCoreThreadTimeouttrue,它將一直等到線程數(shù)為0。

AllowCoreThreadTimeout:允許核心線程超時。

RejectedExecutionHandler:任務(wù)拒絕處理程序

拒絕處理任務(wù)有兩種情況:

當線程數(shù)量達到maxPoolSize且隊列已滿時,新任務(wù)將被拒絕。

當線程池被調(diào)用shutdown()時,它將等待線程池中的任務(wù)被執(zhí)行,然后關(guān)閉。如果在調(diào)用shutdown()和線程池實際關(guān)閉之間提交了一個任務(wù),新任務(wù)將被拒絕。

線程池將調(diào)用rejectedExecutionHandler來處理這個任務(wù)。如果默認值為AbortPolicy,將引發(fā)異常。

ThreadPoolExecutor類有幾個內(nèi)部實現(xiàn)類來處理這種情況:

AbortPolicy丟棄任務(wù)并引發(fā)運行時異常。

CallerRunsPolicy執(zhí)行任務(wù)

DiscardPolicy忽略它,什么也不會發(fā)生。

DiscardOldestPolicy將首先進入隊列(最后執(zhí)行)的任務(wù)從隊列中踢出。

實現(xiàn)RejectedExecutionHandler接口,可以自定義處理器。

二、ThreadPoolExecutor的執(zhí)行順序

線程池執(zhí)行如下任務(wù)

(1)當線程數(shù)小于核心線程數(shù)時,創(chuàng)建線程。

(2)當線程數(shù)大于等于核心線程數(shù)且任務(wù)隊列未滿時,將任務(wù)放入任務(wù)隊列。

(3)當線程的數(shù)量大于或等于核心線程的數(shù)量,并且任何服務(wù)隊列已滿

1)如果線程數(shù)小于最大線程數(shù),則創(chuàng)建線程。

2)如果線程數(shù)等于最大線程數(shù),拋出異常,拒絕任務(wù)。

第三,如何設(shè)置參數(shù)

系統(tǒng)默認值

核心池大小1

_值

_值

keepAliveTime60s

allowCoreThreadTimeoutfalse

rejectedExecutionHandlerAbortPolicy()

如何設(shè)置它

需要根據(jù)幾個值來決定。

任務(wù):每秒的任務(wù)數(shù),假設(shè)為500~1000。

Taskcost:每個任務(wù)都需要時間,假設(shè)0.1s

Responsetime:系統(tǒng)允許的最大響應(yīng)時間,假設(shè)為1s。

做一些計算

corePoolSize每秒需要處理多少線程?

線程計數(shù)任務(wù)/(1/taskcost)任務(wù)* taskcout (500 ~ 1000) * 0.1 50 ~ 100線程。CorePoolSize設(shè)置應(yīng)大于50。

根據(jù)8020原理,如果每秒80%的任務(wù)小于800,那么corePoolSize可以設(shè)置為80。

queueCapacity(核心大小池/任務(wù)成本)*響應(yīng)時間

計算可用隊列容量80/0.1*1 80。意味著隊列中的線程可以等待1s,超過1s就需要新的線程來執(zhí)行。

記住它可以 t設(shè)置為_VALUE,這樣隊列會非常大,線程數(shù)量只會保持在corePoolSize大小。當任務(wù)急劇增加時,沒有新的線程可以打開執(zhí)行,響應(yīng)時間會急劇增加。

maxPoolSize(最大任務(wù)數(shù))-隊列容量)/(1/任務(wù)成本)

可以得到計算的maxPoolSize (1000-80)/10 92。

(最大任務(wù)數(shù)-隊列容量)/每個線程每秒處理能力的最大線程數(shù)

RejectedExecutionHandler:根據(jù)具體情況,任務(wù)不重要可以丟棄,而重要的任務(wù)要通過一些緩沖機制來處理。

默認情況下,通常滿足KeepAliveTime和allowCoreThreadTimeout。

以上都是理想值,要根據(jù)機器的性能來決定。如果在未達到最大線程數(shù)的情況下,機器的cpu負載已滿,則需要通過升級硬件、優(yōu)化代碼、降低taskcost來處理。

什么是激勵電壓?

激勵電壓,物理概念。為了觀察電路系統(tǒng)的特性,輸入到電路中的各種電信號是激勵信號。激勵信號的電壓就是激勵電壓。

中文名

激勵電壓

外國名字

激勵電壓

另一個名字

激勵電壓

主題類別

物理學

快的

航行

例子

基本定義

受控電源的參數(shù)由激勵源控制。

例子

例如,受控電壓源U與U的關(guān)系為:U ^ 2,即U高一倍,激勵源為電壓。例如,U I1/2表示U的電壓值是支路I1電流值的一半,激勵源是電流I1。例如,I 3表示受控電流源I的電流值是激勵源電壓值的三倍。例如,I 3I1意味著受控電流源I的電流是激勵源I1的三倍。