根据业务需求定制线程池参数与策略.pdfVIP

  • 1
  • 0
  • 约小于1千字
  • 约 1页
  • 2026-05-12 发布于北京
  • 举报

根据业务需求定制线程池参数与策略.pdf

如果你的业务场景有一些需求的话,你完全可以自己直接构造ThreadPoolExecutor的线程池,

传入一些参数符合你自己的业务需求的,fixed和cached、scheduled可以满足大部分场景的

线程池的使用了

fixed,但是你希望队列是有界的,此时你就可以自己定制了

corePoolSize:线程池里的线程是0,少于这个数量,他会自动创建这个数量的线程的,只要

线程池里的线程是少于corePoolSize,他后面就会以take阻塞的方式从队列里获取任务,这

些线程是不会释放了

任务一定会直接入队,此时你是用什么队列?队列,有界队列,同步队列,

LinkedBlockingQueue和SynchronousQueue,如果你看一些开源项目里对线程池的定制的源

码的话

有界队列的话,此时如果队列满了,入队失败,就会尝试以非core方式创建线程,直接执

行任务,最多线程池里的线程过umPoolSize,如果线程池里的线程总数一旦超

过了corePoolSize

超出corePoolSize数量的那些线程,在从队列获取的时候是走的poll+超时时间

文档评论(0)

1亿VIP精品文档

相关文档