ThreadPoolExecutor简述

线程池优点
1线程的复用减少了创建和销毁对系统资源的开销
2没有了现用现创建过程的过程,增加了线程的执行响应速度
3方便线程的统筹管理

ThreadPoolExecutor参数含义流程
核心线程数
最大线程数
非核心线程闲置时间
上个参数的时间单位
阻塞队列长度
线程工厂 一般自己实现一个(可以根据默认的改)
拒绝策略 超出最大线程数➕阻塞队列时的任务执行方式(抛异常、直接扔掉不处理、挤掉队内等待最久的、交给调用线程去执行【就是直接执行线程的.run()方法,而不是.start()】)

流程
先核心,上一步满再进阻塞队,上一步满再开启非核心线程,上一步满执行拒绝策略

在这里插入图片描述
线程池的五种状态
running 运行 运行中
shutdown 关闭 调用shutdown()等待正在运行和队列中的也运行完的过程
stop 停止 调用shutdownNow()只等待正在运行的运行完的过程
tidying 整理 上两步执行完毕进入tidying
terminated 终止 tidying状态调用terminated()后
在这里插入图片描述
可参考 https://blog.csdn.net/zhanglong_4444/article/details/95758009
在这里插入图片描述
相比ThreadPoolExecutor 有如下实现:
FixedThreadPool
SingleThreadPool
CachedThreadPool
和自定义的

还有一种ForkJoinPool 有如下实现:
ForkJoinPool
WorkStealingPool

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值