package carryel; // [carryel] trivial modification /** * A handler for tasks that cannot be executed by a {@link ThreadPoolExecutor2}. * * @since 1.5 * @author Doug Lea, edited by Bongjae Chang */ public interface RejectedExecutionHandler2 { /** * Method that may be invoked by a {@link ThreadPoolExecutor2} when * {@link ThreadPoolExecutor2#execute execute} cannot accept a * task. This may occur when no more threads or queue slots are * available because their bounds would be exceeded, or upon * shutdown of the Executor. * *

In the absence of other alternatives, the method may throw * an unchecked {@link java.util.concurrent.RejectedExecutionException}, which will be * propagated to the caller of {@code execute}. * * @param r the runnable task requested to be executed * @param executor the executor attempting to execute this task * @throws java.util.concurrent.RejectedExecutionException if there is no remedy */ void rejectedExecution(Runnable r, ThreadPoolExecutor2 executor); }