OSDN Git Service

2013.10.24
[uclinux-h8/uClinux-dist.git] / lib / classpath / external / jsr166 / java / util / concurrent / RejectedExecutionHandler.java
1 /*
2  * Written by Doug Lea with assistance from members of JCP JSR-166
3  * Expert Group and released to the public domain, as explained at
4  * http://creativecommons.org/licenses/publicdomain
5  */
6
7 package java.util.concurrent;
8
9 /**
10  * A handler for tasks that cannot be executed by a {@link
11  * ThreadPoolExecutor}.
12  *
13  * @since 1.5
14  * @author Doug Lea
15  */
16 public interface RejectedExecutionHandler {
17
18     /**
19      * Method that may be invoked by a {@link ThreadPoolExecutor} when
20      * <tt>execute</tt> cannot accept a task. This may occur when no
21      * more threads or queue slots are available because their bounds
22      * would be exceeded, or upon shutdown of the Executor.
23      *
24      * In the absence other alternatives, the method may throw an
25      * unchecked {@link RejectedExecutionException}, which will be
26      * propagated to the caller of <tt>execute</tt>.
27      *
28      * @param r the runnable task requested to be executed
29      * @param executor the executor attempting to execute this task
30      * @throws RejectedExecutionException if there is no remedy
31      */
32     void rejectedExecution(Runnable r, ThreadPoolExecutor executor);
33 }