线程池的坑

线程池的最佳实践

  1. 能不能不用线程池?

  2. 线程池参数设置得更合理?

  3. 动态修改线程池参数

如何实现?
JDK原生线程池ThreadPoolExecutor提供了如下几个public的setter方法

线程池的原理

各种概念讲解

构造函数

public ThreadPoolExecutor(int corePoolSize,//核心线程数
      int maximumPoolSize,//最大线程数
      long keepAliveTime,//当线程数大于核心线程数时,多余的空闲线程存活的最长时间
      TimeUnit unit,//时间单位
      BlockingQueue<Runnable> workQueue,//任务队列,用来储存等待执行任务的队列
      ThreadFactory threadFactory,//线程工厂,用来创建线程,一般默认即可
      RejectedExecutionHandler handler//拒绝策略,当提交的任务过多而不能及时处理时,我们可以定制策略来处理任务
){

重要参数讲解
方法参数

拒绝策略

阻塞队列

流程总结
image
其实这张图已经说得非常明显了,要看判断逻辑,还有下面这张图
image

posted on   大元王保保  阅读(7)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律



点击右上角即可分享
微信分享提示