【线程池的实现原理 线程池实现原理和调度过程】
![线程池的实现原理 线程池实现原理和调度过程](http://imgsh.easyfang.com/231217/1219353C1-0.jpg)
文章插图
1、java线程池的实现原理很简单,说白了就是一个线程集合workerSet和一个阻塞队列workQueue 。当用户向线程池提交一个任务(也就是线程)时,线程池会先将任务放入workQueue中 。workerSet中的线程会不断的从workQueue中获取线程然后执行 。当workQueue中没有任务的时候,worker就会阻塞,直到队列中有任务了就取出来继续执行 。
2、线程池的几个主要参数的作用
corePoolSize: 规定线程池有几个线程(worker)在运行 。
maximumPoolSize: 当workQueue满了,不能添加任务的时候,这个参数才会生效 。规定线程池最多只能有多少个线程(worker)在执行 。
keepAliveTime: 超出corePoolSize大小的那些线程的生存时间,这些线程如果长时间没有执行任务并且超过了keepAliveTime设定的时间 , 就会消亡 。
unit: 生存时间对于的单位
workQueue: 存放任务的队列
threadFactory: 创建线程的工厂
handler: 当workQueue已经满了 , 并且线程池线程数已经达到maximumPoolSize,将执行拒绝策略 。
推荐阅读
- 失恋的说说心情短语 关于失恋的说说
- 普车 普车工是做什么的 车工
- 赞扬自己的经典语录 赞扬自己的一段话
- 支付宝鲤鱼跳龙门怎么跳 支付宝跳龙门怎么跳的多
- 华为手机时间设置在哪里 华为的手机时间设置在哪里
- 苹果手机iphone 11摄像头是索尼的吗 苹果11手机的摄像头
- 怎么样移动应用软件 移动应用的软件
- 承蒙抬爱用在什么场合 承蒙各位的关注与抬爱
- 信用卡因为逾期被作废怎么办 今年的信用卡逾期有什么处理
- 国产马标志的车是什么牌子 国产马标志的汽车品牌