Stay organized with collections
Save and categorize content based on your preferences.
RejectedExecutionHandler
public
interface
RejectedExecutionHandler
java.util.concurrent.RejectedExecutionHandler
|
Known indirect subclasses
|
A handler for tasks that cannot be executed by a ThreadPoolExecutor
.
Summary
Public methods
rejectedExecution
public abstract void rejectedExecution (Runnable r,
ThreadPoolExecutor executor)
Method that may be invoked by a ThreadPoolExecutor
when
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 RejectedExecutionException
, which will be
propagated to the caller of execute
.
Parameters |
r |
Runnable : the runnable task requested to be executed |
executor |
ThreadPoolExecutor : the executor attempting to execute this task |
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-02-10 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-02-10 UTC."],[],[],null,["# RejectedExecutionHandler\n\nAdded in [API level 1](/guide/topics/manifest/uses-sdk-element#ApiLevels) \nSummary: [Methods](#pubmethods) \n\nRejectedExecutionHandler\n========================\n\n\n`\npublic\n\n\ninterface\nRejectedExecutionHandler\n`\n\n\n`\n\n\n`\n\n|-----------------------------------------------|\n| java.util.concurrent.RejectedExecutionHandler |\n\n|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| Known indirect subclasses [ThreadPoolExecutor.AbortPolicy](/reference/java/util/concurrent/ThreadPoolExecutor.AbortPolicy), [ThreadPoolExecutor.CallerRunsPolicy](/reference/java/util/concurrent/ThreadPoolExecutor.CallerRunsPolicy), [ThreadPoolExecutor.DiscardOldestPolicy](/reference/java/util/concurrent/ThreadPoolExecutor.DiscardOldestPolicy), [ThreadPoolExecutor.DiscardPolicy](/reference/java/util/concurrent/ThreadPoolExecutor.DiscardPolicy) |------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | [ThreadPoolExecutor.AbortPolicy](/reference/java/util/concurrent/ThreadPoolExecutor.AbortPolicy) | A handler for rejected tasks that throws a [RejectedExecutionException](/reference/java/util/concurrent/RejectedExecutionException). | | [ThreadPoolExecutor.CallerRunsPolicy](/reference/java/util/concurrent/ThreadPoolExecutor.CallerRunsPolicy) | A handler for rejected tasks that runs the rejected task directly in the calling thread of the `execute` method, unless the executor has been shut down, in which case the task is discarded. | | [ThreadPoolExecutor.DiscardOldestPolicy](/reference/java/util/concurrent/ThreadPoolExecutor.DiscardOldestPolicy) | A handler for rejected tasks that discards the oldest unhandled request and then retries `execute`, unless the executor is shut down, in which case the task is discarded. | | [ThreadPoolExecutor.DiscardPolicy](/reference/java/util/concurrent/ThreadPoolExecutor.DiscardPolicy) | A handler for rejected tasks that silently discards the rejected task. | |\n\n\u003cbr /\u003e\n\n*** ** * ** ***\n\nA handler for tasks that cannot be executed by a [ThreadPoolExecutor](/reference/java/util/concurrent/ThreadPoolExecutor).\n\nSummary\n-------\n\n| ### Public methods ||\n|------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| ` abstract void` | ` `[rejectedExecution](/reference/java/util/concurrent/RejectedExecutionHandler#rejectedExecution(java.lang.Runnable,%20java.util.concurrent.ThreadPoolExecutor))`(`[Runnable](/reference/java/lang/Runnable)` r, `[ThreadPoolExecutor](/reference/java/util/concurrent/ThreadPoolExecutor)` executor) ` Method that may be invoked by a [ThreadPoolExecutor](/reference/java/util/concurrent/ThreadPoolExecutor) when [execute](/reference/java/util/concurrent/ThreadPoolExecutor#execute(java.lang.Runnable)) cannot accept a task. |\n\nPublic methods\n--------------\n\n### rejectedExecution\n\nAdded in [API level 1](/guide/topics/manifest/uses-sdk-element#ApiLevels) \n\n```\npublic abstract void rejectedExecution (Runnable r, \n ThreadPoolExecutor executor)\n```\n\nMethod that may be invoked by a [ThreadPoolExecutor](/reference/java/util/concurrent/ThreadPoolExecutor) when\n[execute](/reference/java/util/concurrent/ThreadPoolExecutor#execute(java.lang.Runnable)) cannot accept a\ntask. This may occur when no more threads or queue slots are\navailable because their bounds would be exceeded, or upon\nshutdown of the Executor.\n\nIn the absence of other alternatives, the method may throw\nan unchecked [RejectedExecutionException](/reference/java/util/concurrent/RejectedExecutionException), which will be\npropagated to the caller of `execute`.\n\n\u003cbr /\u003e\n\n| Parameters ||\n|------------|---------------------------------------------------------------------------|\n| `r` | `Runnable`: the runnable task requested to be executed \u003cbr /\u003e |\n| `executor` | `ThreadPoolExecutor`: the executor attempting to execute this task \u003cbr /\u003e |\n\n| Throws ||\n|------------------------------------------------------------------------------------------|-----------------------|\n| [RejectedExecutionException](/reference/java/util/concurrent/RejectedExecutionException) | if there is no remedy |"]]