内容简介:线程池结构图线程池是一套围绕着核心线程、非核心线程、等待队列的任务调度框架。
线程池
结构图
线程池是一套围绕着核心线程、非核心线程、等待队列的任务调度框架。
默认情况,线程池主要结构如下:
corePoolSize
核心线程数
当前线程池中运行的线程数量还没有达到 corePoolSize 大小时,线程池会将任务直接提交给核心线程执行
BlockingQueue
等待队列
如果当前线程池中运行的线程数量已经达到 corePoolSize ,新提交的任务会被加入到 等待队列 中
直到某一个" 核心线程 "执行任务完毕,处于空闲状态,线程池会 等待队列 中取出一个新的任务执行
maximumPoolSize
最大线程数量
当线程数大于 corePoolSize
数量,并且等待队列已满,但是还没有达到最大线程数 maximumPoolSize
,则线程池会创建新的" 非核心线程 "来执行任务
R ejectedExecutionException
任务拒绝策略
如果提交的任务,无法被核心线程直接执行,又无法加入等待队列,又无法创建“非核心线程”直接执行,线程池将根据拒绝处理器定义的策略处理这个任务
往期精选
最后说一句
原创不易,如果觉得写得不错就点个"在看"吧,或者转发更佳
也可以加我微信,加群讨论更多技术问题
或者关注公众号,查看更多文章
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- JavaScript线程机制与事件机制
- 面试官:线程池运行机制如何改为线程池满了,再丢队列?
- 漫画 Java 线程池的工作机制
- Java并发编程(02):线程核心机制,基础概念扩展
- JS核心知识点梳理——异步,单线程,运行机制
- 线程同步机制在负载均衡与单例模式中的应用
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。