, 就会触发如下拒绝策略 ;
DiscardPolicy : 丢弃任务 ;
DiscardOldestPolicy : 丢弃队头的最旧的任务 ;
AbortPolicy : 抛出异常 , 这也是默认方式...;
CallerRunsPolicy : 调用者自行处理 ;
线程池默认的拒绝策略是 抛出异常 方式 ;
private static final RejectedExecutionHandler...1
个线程池 , 核心线程数是
2
, 最大线程数是
3
, 则非核心线程 0 ~ 1 个 , 非核心线程最大空闲存活时间 60 秒 , 阻塞队列最大存放 10 个元素 , 拒绝策略设置为抛出异常方式..., 如果阻塞队列装满 , 再次尝试执行新任务时 , 会抛出异常 ;
代码示例 :
import java.util.concurrent.*;
public class Main {
public...(Main.java:16)
线程 ID : pool-1-thread-3 , 线程索引 : 2
线程 ID : pool-1-thread-1 , 线程索引 : 4
线程 ID : pool-1-thread