线程池的七大参数

**线程池的七大参数**:
1.corePoolSize:线程池中的常驻核心线程数
2.maxinumPoolSize:线程池中能够容纳同时执行的最大线程数,此值必须大于等于一
3.keepAliveTime:多余的空闲线程的存活时间。
当前线程池数量超过corePoolSize时,当空闲时间达到keepAliveTime时,多余空闲线程会被销毁直到只剩下corePoolSize个线程为止。
4.unit:keepAliveTime的单位
5.workQueue:任务队列,被提交但是尚未被执行的任务。
6.threadFactory:表示生成线程池中工作线程的线程工厂,用于创建线程一般用默认的即可。
7.handler:拒绝策略,表示当队列满了并且工作线程-大于等于线程池的数量最大线程数(maxinumPoolSize)时如何来拒绝请求执行的runnable的策略。

示例:

线程池=银行网点

物理上的受理窗口,办理业务窗口

threadFactory默认->银行网点的logo/工作人员的制服和胸卡

1.当只有两个请求线程时,直接来到线程池中的核心线程中

《线程池的七大参数》

2.当线程池核心线程被占用时,又来了三个请求,进入阻塞队列排队等待

《线程池的七大参数》

3.再一次增加两个请求,启用临时线程,将阻塞队列中的请求,放置到临时线程中,新的请求加入到阻塞队列 

《线程池的七大参数》

4.当又有多的请求进入时,阻塞队列已满,启用拒绝策略

5.在keepAliveTime的时间内,没有多余的线程请求了,就会销毁三个临时线程

    原文作者:我是LGX
    原文地址: https://blog.csdn.net/weixin_41520357/article/details/125253303
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞