线程池7大参数详解

   corePoolSize:核心线程数
       maximumPoolSize:最大线程数
       keepAlivedTime:线程存活时间
       unit:线程存活时间单位
       workQueue:阻塞队列,用来存放待处理的任务
       threadFactory:线程工厂,用来创建线程池中的工作线程
       handler:拒绝策略,当线程池处于满负荷状态时,无法处理后续进来的任务,便会采用拒绝策略。
     参数关系详解:
            首先我们创建线程会使用到线程工厂threadFactory,初始化线程数就是corePoolSize参数设置,当任务数大于核心线程数,线程工厂会继续创建线程,直至达到最大线程数maximumPoolSize,超出最大线程数的任务会放入到阻塞队列workQueue,若任务非常多,队列满了,便会触发拒绝策略handler,
      拒绝策略有四种:
      1,AbortPolicy:默认使用策略,直接丢弃
      2,CallerRunsPolicy:只要线程池没有被shutdown(),就有提交任务的线程通过执行r.run()方法直接以普通的方法执行
      3,DisCardPlicy:直接丢弃,不做任务处理
      4,DisCardOldestPolicy::只要线程池没有被shutdown(),则通过e.getQueue().poll()把队列头部等待最久的任务丢弃,然后把当前任务通过execute()方法提交到阻塞队列
      keepAlivedTime,线程存活时间,当任务量下降时,空闲的线程在这个时间之后将会被回收
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值