ThreadPoolExecutor.CallerRunsPolicy (Java SE 13 & JDK 13 )
Description: declaration: module: java.base, package: java.util.concurrent, class: ThreadPoolExecutor, class: CallerRunsPolicy
Keywords: java.util.concurrent.ThreadPoolExecutor.CallerRunsPolicy class

Module java.base
Package java.util.concurrent

# Class ThreadPoolExecutor.CallerRunsPolicy

java.lang.Object
java.util.concurrent.ThreadPoolExecutor.CallerRunsPolicy

All Implemented Interfaces:
  `RejectedExecutionHandler`

Enclosing class:
  ThreadPoolExecutor

    public static class ThreadPoolExecutor.CallerRunsPolicy
    extends Object
    implements RejectedExecutionHandler

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.

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `CallerRunsPolicy()` | Creates a `CallerRunsPolicy`.

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `void` | `rejectedExecution​(Runnable r, ThreadPoolExecutor e)` | Executes task r in the caller's thread, unless the executor has been shut down, in which case the task is discarded.

  ### Methods declared in class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### CallerRunsPolicy

    public CallerRunsPolicy()
    Creates a `CallerRunsPolicy`.

- ## Method Details

  - ### rejectedExecution

    public void rejectedExecution​(Runnable r, ThreadPoolExecutor e)
    Executes task r in the caller's thread, unless the executor has been shut down, in which case the task is discarded.
    Specified by:
      `rejectedExecution` in interface `RejectedExecutionHandler`
    Parameters:
      `r` - the runnable task requested to be executed
      `e` - the executor attempting to execute this task