线程池相关原理

目录

  1. 线程池的核心参数
  2. 线程池执行原理、拒绝策略
  3. 常见阻塞队列
  4. 如何确定核心线程数
  5. ​编辑
  6. 线程池的种类
  7. 为什么不建议用Executors创建线程池

线程池的核心参数

1、corePoolSize:线程核心数目;

2、maximumPoolSize:最大线程数目,等于核心线程数+救急线程的最大数目;

3、keepAliveTime:救急线程的生存时间,生存时间内没有新任务,此线程资源会被释放;

4、unit:时间单位;

5、workQueue:当没有空闲核心线程时候,新来的任务会加入到此队列,队列满会创建救急线程执行任务;

6、threadFactory:线程工厂,定制线程对象的创建,比如设置线程名字,是否守护线程等;

7、handler:拒绝策略,核心线程繁忙,workQueue也放满时的策略。


线程池执行原理、拒绝策略

线程池相关原理_第1张图片


常见阻塞队列

线程池相关原理_第2张图片
线程池相关原理_第3张图片


如何确定核心线程数

线程池相关原理_第4张图片


线程池的种类

线程池相关原理_第5张图片

线程池相关原理_第6张图片

线程池相关原理_第7张图片

线程池相关原理_第8张图片线程池相关原理_第9张图片


为什么不建议用Executors创建线程池

线程池相关原理_第10张图片

你可能感兴趣的:(java,jvm,开发语言)