public enum RejectPolicy extends Enum<RejectPolicy>
如果设置了maxSize, 当总线程数达到上限, 会调用RejectedExecutionHandler进行处理,此枚举为JDK预定义的几种策略枚举表示
| 枚举常量和说明 |
|---|
ABORT
处理程序遭到拒绝将抛出RejectedExecutionException
|
BLOCK
当任务队列过长时处于阻塞状态,直到添加到队列中,固定并发数去访问,并且不希望丢弃任务时使用此策略
|
CALLER_RUNS
调用者线程来执行被丢弃的任务;一般可能是由主线程来直接执行
|
DISCARD
放弃当前任务
|
DISCARD_OLDEST
如果执行程序尚未关闭,则位于工作队列头部的任务将被删除,然后重试执行程序(如果再次失败,则重复此过程)
|
| 限定符和类型 | 方法和说明 |
|---|---|
RejectedExecutionHandler |
getValue()
获取RejectedExecutionHandler枚举值
|
static RejectPolicy |
valueOf(String name)
返回带有指定名称的该类型的枚举常量。
|
static RejectPolicy[] |
values()
按照声明该枚举类型的常量的顺序, 返回
包含这些常量的数组。
|
public static final RejectPolicy ABORT
public static final RejectPolicy DISCARD
public static final RejectPolicy DISCARD_OLDEST
public static final RejectPolicy CALLER_RUNS
public static final RejectPolicy BLOCK
public static RejectPolicy[] values()
for (RejectPolicy c : RejectPolicy.values()) System.out.println(c);
public static RejectPolicy valueOf(String name)
name - 要返回的枚举常量的名称。IllegalArgumentException - 如果该枚举类型没有带有指定名称的常量NullPointerException - 如果参数为空值public RejectedExecutionHandler getValue()
Copyright © 2023. All rights reserved.