Stay organized with collections
Save and categorize content based on your preferences.
RejectedExecutionHandler
interface RejectedExecutionHandler
A handler for tasks that cannot be executed by a ThreadPoolExecutor
.
Summary
Public methods
rejectedExecution
abstract fun rejectedExecution(
r: Runnable!,
executor: ThreadPoolExecutor!
): Unit
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 |
Exceptions |
java.util.concurrent.RejectedExecutionException |
if there is no remedy |
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](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)\n\nRejectedExecutionHandler\n========================\n\n```\ninterface RejectedExecutionHandler\n```\n\n|----------------------------------------------------|\n| [java.util.concurrent.RejectedExecutionHandler](#) |\n\n|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| Known Direct Subclasses [ThreadPoolExecutor.AbortPolicy](/reference/kotlin/java/util/concurrent/ThreadPoolExecutor.AbortPolicy), [ThreadPoolExecutor.CallerRunsPolicy](/reference/kotlin/java/util/concurrent/ThreadPoolExecutor.CallerRunsPolicy), [ThreadPoolExecutor.DiscardOldestPolicy](/reference/kotlin/java/util/concurrent/ThreadPoolExecutor.DiscardOldestPolicy), [ThreadPoolExecutor.DiscardPolicy](/reference/kotlin/java/util/concurrent/ThreadPoolExecutor.DiscardPolicy) |-------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | [ThreadPoolExecutor.AbortPolicy](/reference/kotlin/java/util/concurrent/ThreadPoolExecutor.AbortPolicy) | A handler for rejected tasks that throws a [RejectedExecutionException](/reference/kotlin/java/util/concurrent/RejectedExecutionException). | | [ThreadPoolExecutor.CallerRunsPolicy](/reference/kotlin/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/kotlin/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/kotlin/java/util/concurrent/ThreadPoolExecutor.DiscardPolicy) | A handler for rejected tasks that silently discards the rejected task. | |\n\nA handler for tasks that cannot be executed by a [ThreadPoolExecutor](/reference/kotlin/java/util/concurrent/ThreadPoolExecutor).\n\nSummary\n-------\n\n| Public methods ||\n|---------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| abstract [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [rejectedExecution](#rejectedExecution(java.lang.Runnable,%20java.util.concurrent.ThreadPoolExecutor))`(`r:` `[Runnable](../../lang/Runnable.html#)!`, `executor:` `[ThreadPoolExecutor](/reference/kotlin/java/util/concurrent/ThreadPoolExecutor)!`)` Method that may be invoked by a [ThreadPoolExecutor](/reference/kotlin/java/util/concurrent/ThreadPoolExecutor) when [execute](/reference/kotlin/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](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels) \n\n```\nabstract fun rejectedExecution(\n r: Runnable!, \n executor: ThreadPoolExecutor!\n): Unit\n```\n\nMethod that may be invoked by a [ThreadPoolExecutor](/reference/kotlin/java/util/concurrent/ThreadPoolExecutor) when [execute](/reference/kotlin/java/util/concurrent/ThreadPoolExecutor#execute(java.lang.Runnable)) 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.\n\nIn the absence of other alternatives, the method may throw an unchecked [RejectedExecutionException](/reference/kotlin/java/util/concurrent/RejectedExecutionException), which will be propagated to the caller of `execute`.\n\n| Parameters ||\n|------------|--------------------------------------------------------------------------------------------------------------------------------|\n| `r` | [Runnable](../../lang/Runnable.html#)!: the runnable task requested to be executed |\n| `executor` | [ThreadPoolExecutor](/reference/kotlin/java/util/concurrent/ThreadPoolExecutor)!: the executor attempting to execute this task |\n\n| Exceptions ||\n|---------------------------------------------------|-----------------------|\n| `java.util.concurrent.RejectedExecutionException` | if there is no remedy |"]]