关注
主要说过程和核心参数
大概就是 : 默认情况,线程数为0, 此时来请求,则线程池new一个线程来执行, 如果
请求数大于了核心数值,根据参数来选择是否继续new线程, 直到线程数等于最大线程值;
此时在来任务,则压入到等待队列中,当等待队列满时,此时在来任务则会直接放弃;
当压力没有那么大时,线程池会回收线程数量直到 核心数 或者根据配置参数 可以达到0
corePoolSize:
核心池大小,默认情况下线程不会超过核心大小。
maximumPoolSize: 最大线程数,
当达到一定负载时,线程数会超过核心数,但始终小于最大线程数. 当负载较轻会回收线程至核心池数量
keepAliveTime:
表示线程没有任务执行时,的存活时间. 默认情况,当线程数大于核心小于最大数量时才会启用;
如果调用allowCoreThreadTimeOut(boolean)方法,线程数下界为0
unit:keepAliveTime的时间单位
workQueue:
阻塞队列,用来存储等待执行的任务。 一般很少使用abq和pbq,多用lbq和synchronousQueue.队列.
abq: arrayBlockingQueue队列,基于数组的先进先出,创建时必须指定大小
pbq: PriorityBlockingQueue 优先级队列
lbq: linkedBlockingQueue,基于链表的队列,默认长度为Integer.MAX_VALUE
synchronousQueue: 不保存任务,直接创建新线程
threadFactory:线程工厂
handler: 对拒绝任务的处理策略,四种参数.
abortPolicy(丢弃任务并抛异常),discardPolicy(丢弃任务不抛异常),DiscardOldestPolicy(丢弃最前面的任务),callerRunsPolicy(交由调用线程处理)
线程池构造函数: 实际都是指向最后一个构造函数;
workers: 工作集
allowCoreThreadTimeOut:
是否允许核心线程设置存活时间
poolSize: 线程池中当前线程数
largestPoolSize:
记录曾经出现过的最大线程数
completedTaskCount:
记录已经执行完的任务数
查看原帖
点赞 2
相关推荐
点赞 评论 收藏
分享
04-14 11:32
佳木斯大学 电气工程师 点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
- 1... 挑战 26 届最速转正失败——我做错了什么2.9W
- 2... 我的校园恋爱正式结束了1.1W
- 3... 25的兄弟们还在战斗吗?7467
- 4... 坐我后面的妹妹被拉走了!!6713
- 5... 从后端的角度聊一聊:2728届想要搞开发的同学现在最应该干什么?6000
- 6... 毕业照和春招结束代表着我的学生时代落幕了5264
- 7... 好想加班好想加班,啊啊我的钱(っ╥╯﹏╰╥c)4706
- 8... 双非大一百度timeline4531
- 9... 秋招提前上岸,这个机会真的不错!建议大家冲!4145
- 10... 26届找不到暑期实习也不必太焦虑!!!!4009
正在热议
更多
# 写给毕业5年后的自己 #
1447次浏览 30人参与
# 上班苦还是上学苦呢? #
220540次浏览 1304人参与
# 华泰证券Fintech星战营 #
165019次浏览 186人参与
# 职场捅娄子大赛 #
302252次浏览 3032人参与
# 市场营销人求职交流聚集地 #
115725次浏览 1078人参与
# 华为求职进展汇总 #
4628625次浏览 28200人参与
# 如何缓解求职过程中的焦虑? #
4034次浏览 67人参与
# 好好告别我的学生时代 #
19536次浏览 434人参与
# 薪资爆料 #
107477次浏览 1153人参与
# 运营商笔面经互助 #
145173次浏览 1622人参与
# 晒一下我的毕业照 #
24369次浏览 220人参与
# 如果今天是你的last day,你会怎么度过? #
20501次浏览 188人参与
# 外包能不能当跳板? #
31208次浏览 200人参与
# 非技术求职现状 #
424567次浏览 2921人参与
# 我是XXX,请攻击我最薄弱的地方 #
26624次浏览 255人参与
# 简历无回复,你会继续海投还是优化再投? #
68127次浏览 697人参与
# 宇通求职进展汇总 #
19837次浏览 162人参与
# 记录实习开销 #
14599次浏览 104人参与
# 运营来爆料 #
43112次浏览 321人参与
# 00后45度躺现状 #
93073次浏览 486人参与
# 2025,我想...... #
48461次浏览 467人参与