当前位置:网站首页>线程池总结
线程池总结
2022-08-09 06:29:00 【史上最强的弟子】
线程池
new ThreadPoolExecutor(int corePoolSize, //核心线程数
int maximumPoolSize,//最大线程数
long keepAliveTime,//活跃时间
TimeUnit unit,//活跃时间单位
BlockingQueue<Runnable> workQueue,//阻塞队列
ThreadFactory threadFactory,//线程创建工厂
RejectedExecutionHandler handler);//拒绝策略
一开始让线程池执行,线程池会创建线程直到核心线程数,多余的线程会放到阻塞队列中,阻塞队列满了,创建线程直到最大线程数,当达到最大线程数,阻塞队列也满了的情况想继续执行,会促发拒绝策略。
拒绝策略:
1.直接抛异常.
2.直接return.
3.阻塞队列中最久没执行的return,新的插入队列.
4.调用线程内部处理.
怎么设置核心线程数和最大线程数
1.首先查看CPU 是计算密集型还是I/O 密集型。
计算密集型 = 核心数
I/O密集型 = 2n
公式
x 是响应系数
n/(1-x)
1.当cpu是I/O 密集型时,则 x ≈ 0.5 ,2n
2.当cpu是计算密集型时,则 x ≈ 0 ,n
最大线程数是核心线程数2倍
边栏推荐
猜你喜欢
中英文说明书丨TRC 交替醇(Catalogue NumberA575760)
C语言的内置宏(定义日志宏)
[email protected]@BSABiS nanoparticles) | dendrimer-stabilized bismuth sulfide nanop"/>
Ferric oxide/bismuth sulfide nanocomposites ([email protected]@BSABiS nanoparticles) | dendrimer-stabilized bismuth sulfide nanop
工控设备的系统如何进行加固
缓存技术使用
05 多线程与高并发 - ThreadPoolExecutor 源码解析
【Feel】In the Unity Feel plugin, Camera cannot display CameraShake correctly
Use of PlantUML plugin in idea
Xilinx Zynq ZynqMP DNA
Teach you how to make the Tanabata meteor shower in C language - elegant and timeless (detailed tutorial)
随机推荐
一道很简答但是没答对的SQL题
Can Jincang Database Set Transaction Automatic Commit?
C语言实现顺序栈和链队列
[HNOI2002]营业额统计
el-table缓存数据
static静态关键字和继承
Use of PlantUML plugin in idea
简单工厂模式
db.sqlite3没有“as Data Source“解决方法
.NET高级技术
Simple Factory Pattern
【R语言】对文件进行归一化整理到各文件类型文件夹
APP product source data interface (taobao, jingdong/spelling/suning/trill platform details a lot data analysis interface) code and docking tutorial
ZIP压缩包文件删除密码的方法
Unity backgammon game design and simple AI implementation (1)
kubernetes security
22 high mid term paper topics forecast
Error jinja2.exceptions.UndefinedError: 'form' is undefined
CMake中INSTALL_RPATH与BUILD_RPATH问题
05 多线程与高并发 - ThreadPoolExecutor 源码解析