Java多線程中線程池常見7個參數(shù)的詳解以及執(zhí)行流程
一 線程池常見參數(shù)
1.1 概念
1.2 7個參數(shù)說明
7個參數(shù):
int corePoolSize, 常駐線程數(shù)量(核心)
int maximumPoolSize,最大線程數(shù)量
long keepAliveTime,TimeUnit unit,線程存活時間
BlockingQueue<Runnable> workQueue,阻塞隊列(排隊的線程放入)
ThreadFactory threadFactory,線程工廠,用于創(chuàng)建線程
RejectedExecutionHandler handler拒絕策略(線程滿了)
1.3 coresize和maxsize,poolsize
1.corePoolSize:
線程池的核心線程數(shù)量,線程池的基本大小,即在沒有任務(wù)需要執(zhí)行的時候線程池的大小,并且只有在工作隊列滿了的情況下才會創(chuàng)建超出這個數(shù)量的線程。
2.maximumPoolSize:
線程池中允許的最大線程數(shù)
3.poolSize:
線程池中當(dāng)前線程的數(shù)量
3者之間的關(guān)系:
新提交一個任務(wù)時的處理流程很明顯:
1、如果當(dāng)前線程池的線程數(shù)還沒有達(dá)到核心線程數(shù)(poolSize < corePoolSize),無論是否有空閑的線程,都新增一個線程處理新提交的任務(wù);
2、如果當(dāng)前線程池的線程數(shù)大于或等于核心線程數(shù)(poolSize >= corePoolSize) 且任務(wù)隊列未滿時,就將新提交的任務(wù)提交到阻塞隊列排隊,等候處理workQueue.offer(command);
3、如果當(dāng)前線程池的線程數(shù)大于或等于核心線程數(shù)(poolSize >= corePoolSize) 且任務(wù)隊列滿時;
3.1、當(dāng)前poolSize<maximumPoolSize,那么就新增線程來處理任務(wù);
3.2、當(dāng)前poolSize>=maximumPoolSize,那么意味著線程池的處理能力已經(jīng)達(dá)到了極限,此時需要拒絕新增加的任務(wù)。至于如何拒絕處理新增的任務(wù),取決于線程池的飽和策略RejectedExecutionHandler。
1.4 newFixedThreadPool
newFixedThreadPool中設(shè)定的線程數(shù)是核心線程數(shù),還是最大線程數(shù),開源代碼如下:
底層繼續(xù)查看 new ThreadPoolExecutor的源代碼
通過查看源碼:答案是:核心線程數(shù)和最大線程數(shù)都設(shè)置成了定義的線程數(shù)量。
到此這篇關(guān)于Java多線程中線程池常見7個參數(shù)的詳解以及執(zhí)行流程的文章就介紹到這了,更多相關(guān)Java 線程池參數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MyBatis實現(xiàn)自定義MyBatis插件的流程詳解
MyBatis的一個重要的特點就是插件機(jī)制,使得MyBatis的具備較強的擴(kuò)展性,我們可以根據(jù)MyBatis的插件機(jī)制實現(xiàn)自己的個性化業(yè)務(wù)需求,本文給大家介紹了MyBatis實現(xiàn)自定義MyBatis插件的流程,需要的朋友可以參考下2024-12-12Java泛型實現(xiàn)類型安全的通用類型轉(zhuǎn)換器
在開發(fā)中,我們常常需要在不同類型之間進(jìn)行轉(zhuǎn)換,為了提高代碼的可讀性與安全性,Java的泛型機(jī)制提供了強大的類型檢查能力,下面我們就來看看如何通過泛型實現(xiàn)類型安全的通用轉(zhuǎn)換器2024-11-11mybatisplus下劃線駝峰轉(zhuǎn)換的問題解決
在mybatis-plus中,下劃線-駝峰自動轉(zhuǎn)換可能導(dǎo)致帶下劃線的字段查詢結(jié)果為null,本文就來介紹一下mybatisplus下劃線駝峰轉(zhuǎn)換的問題解決,感興趣的可以了解一下2024-10-10jsp+servlet實現(xiàn)簡單登錄頁面功能(附demo)
本文主要介紹了jsp+servlet實現(xiàn)簡單登錄頁面功能登錄成功跳轉(zhuǎn)新頁面,登錄失敗在原登錄界面提示登錄失敗信息,對初學(xué)者有一定的幫助,感興趣的可以了解一下2021-07-07