Java线程中的ThreadPoolExecutor

Java线程中的ThreadPoolExecutor

Java线程中的ThreadPoolExecutor是ExecutorService接口的实现类,其通过线程池中的线程来执行提交的任务。

线程池主要用来解决两个问题:一是用来解决大量异步任务导致的性能问题,它降低了每个任务调用的系统开销,二是其提供了对线程资源的管理。ThreadPoolExecutor自身维护了其一些属性,比如已完成的任务数等。

JDK提供了一些简便配置thread pool的方法:

  1. Executors.newCachedThreadPool() (unbounded thread pool, with automatic thread reclamation)

  2. Executors.newFixedThreadPool(int) (fixed size thread pool)

  3. Executors.newSingleThreadExecutor() (single background thread)

如果我们要更加灵活地配置thread pool时,那么就要配置一下参数:

corePoolSize: 线程池维护线程的最少数量


maximumPoolSize:线程池维护线程的最大数量


keepAliveTime: 线程池维护线程所允许的空闲时间


unit: 线程池维护线程所允许的空闲时间的单位


workQueue: 线程池所使用的缓冲队列


handler: 线程池对拒绝任务的处理策略

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值