java線程池參數(shù)詳解 線程池的五個(gè)參數(shù)?
線程池的五個(gè)參數(shù)?Corepollsize:核心線程數(shù)。Maximumpoolsize:最大線程數(shù)。Keepalivetime:空閑線程的保留時(shí)間。Timeunit:空閑線程保留時(shí)間的單位。阻塞隊(duì)列&
線程池的五個(gè)參數(shù)?
Corepollsize:核心線程數(shù)。
Maximumpoolsize:最大線程數(shù)。
Keepalivetime:空閑線程的保留時(shí)間。
Timeunit:空閑線程保留時(shí)間的單位。
阻塞隊(duì)列<runnable>:阻塞隊(duì)列以存儲(chǔ)等待執(zhí)行的任務(wù)。
Threadfactory:用于創(chuàng)建線程的線程工廠。
Rejectedexecutionhandler:隊(duì)列已滿且任務(wù)量大于最大線程數(shù)時(shí)的異常處理策略。
如何修改weblogic默認(rèn)線程池大???
換句話說,如果用戶登錄到應(yīng)用程序系統(tǒng)進(jìn)行某些操作,Weblogic將weblogic.kernel.default為中的用戶分配線程。默認(rèn)情況下,此參數(shù)的值為40。例如,對(duì)于大型企業(yè)應(yīng)用程序,如果有很多用戶同時(shí)登錄操作系統(tǒng),40個(gè)線程就太少了
我學(xué)到的原理是,當(dāng)CPU(核心)的數(shù)量是這個(gè)數(shù)量時(shí),活動(dòng)線程的數(shù)量是最好的?;顒?dòng)線程太少導(dǎo)致CPU不能充分利用,活動(dòng)線程太多導(dǎo)致線程上下文切換開銷過大。首先,線程應(yīng)該是活動(dòng)的。io中的線程、休眠線程等不會(huì)占用CPU。在實(shí)際環(huán)境中,活動(dòng)線程的數(shù)量總是不斷變化的。許多活動(dòng)線程可能處于非活動(dòng)狀態(tài),因?yàn)樗鼈冃枰幚鞩O或等待資源。如果線程數(shù)等于CPU(核心)數(shù),則表示活動(dòng)線程數(shù)小于CPU(核心)數(shù)。因此,一些文檔建議使用CPU*22等規(guī)則來(lái)確定線程數(shù),但實(shí)際需要的線程數(shù)與線程的實(shí)際工作內(nèi)容有關(guān)。如果線程始終處于活動(dòng)狀態(tài),那么線程數(shù)達(dá)到或略高于CPU數(shù)(core)的CPU可以得到更充分的利用,如果線程經(jīng)常需要等待而不處于活動(dòng)狀態(tài),那么線程數(shù)應(yīng)該更多,以確保有足夠的活動(dòng)線程來(lái)充分利用CPU。但這只是一個(gè)簡(jiǎn)單的考慮,有時(shí)實(shí)際情況比較復(fù)雜,我們必須考慮線程會(huì)以什么樣的行為工作,有必要通過有針對(duì)性的實(shí)驗(yàn)得出一個(gè)合理的值。