ThreadPoolExecutor常用的五个参数介绍

(1)最大线程数(MaximumPoolSize):线程池运行的最大线程数量,受属性CAPACITY的限制,最大为(2^29)-1(约5亿)

(2)核心线程数(CorePoolSize):线程池中保持最小活动数的线程数量,并且不允许超时,除非调用allowCoreThreadTimeOut方法,这个时候最小值是0。

当线程池线程数量小于核心线程数时,一个新的任务请求被提交上来时,不管其他线程是否处于空闲状态,都会新建一个线程来处理这个请求。

如果在运行的线程数数量超过核心线程数但是小于最大线程数,并且工作队列已满,将创建一个线程处理这个请求。

默认情况下,当一个任务请求时,核心线程数才会被创建和启动,但是也可以通过prestartCoreThread启动一个核心线程或者prestartAllCoreThread启动所有核心线程。

(3)存活时间(Keep-alive times):空闲线程等待工作的超时时间(以纳秒为单位)

(4)时间单位(TimeUnit):TimeUnit 是存活时间的单位。

(5)阻塞队列(BlockingQueue):任何实现了BlockingQueue接口的实现类都可以用来传输和保存提交的任务,阻塞队列的使用和线程池大小相关。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值