并发编程-线程池

今天要聊一下线程池的知识,因为比较简单就先讲参数再花一下流程图


public ThreadPoolExecutor(int corePoolSize,
                          int maximumPoolSize,
                          long keepAliveTime,
                          TimeUnit unit,
                          BlockingQueue<Runnable> workQueue,
                          ThreadFactory threadFactory,
                          RejectedExecutionHandler handler) ;

corePoolSize:核心线程数

maximumPoolSize:最大线程数

keepAliveTime:线程存活时间(默认针对核心线程以外的线程,但是可以开启对核心线程的过期时间)

TimeUnit:存活时间的单位

BlockingQueue:阻塞对列

ThreadFactory:线程工厂

RejectExecutionHandler:拒绝策略


流程图如上:

这里说一下拒绝策略; 首先我们肯定是可以自定义拒绝策略的。jdk也为我们提供了四种实现:

1,直接抛出异常

2,直接无视,不处理

3,从对列里取出最早的一个执行任务,继续执行流程动作

4,由当前调用的线程来处理

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值