Executor (Apache Tomcat 9.0.106 API Documentation)
Description: declaration: package: org.apache.catalina, interface: Executor

# Interface Executor

All Superinterfaces:
  `Executor`, `Lifecycle`

All Known Implementing Classes:
  `StandardThreadExecutor`, `StandardVirtualThreadExecutor`

public interface Executor extends Executor, Lifecycle

- ## Nested Class Summary

  ### Nested classes/interfaces inherited from interface org.apache.catalina.Lifecycle

  `Lifecycle.SingleUse`

- ## Field Summary

  ### Fields inherited from interface org.apache.catalina.Lifecycle

  `AFTER_DESTROY_EVENT, AFTER_INIT_EVENT, AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_DESTROY_EVENT, BEFORE_INIT_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, CONFIGURE_START_EVENT, CONFIGURE_STOP_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `execute(Runnable command, long timeout, TimeUnit unit)`
  Deprecated.
  Unused.
  `String`
  `getName()`

  ### Methods inherited from interface java.util.concurrent.Executor

  `execute`

  ### Methods inherited from interface org.apache.catalina.Lifecycle

  `addLifecycleListener, destroy, findLifecycleListeners, getState, getStateName, init, removeLifecycleListener, start, stop`

- ## Method Details

  - ### getName

    String getName()

  - ### execute

    @Deprecated void execute(Runnable command, long timeout, TimeUnit unit)
    Deprecated.
    Unused. Will be removed in Tomcat 10.1.x onwards.
    Executes the given command at some time in the future. The command may execute in a new thread, in a pooled thread, or in the calling thread, at the discretion of the `Executor` implementation. If no threads are available, it will be added to the work queue. If the work queue is full, the system will wait for the specified time until it throws a RejectedExecutionException
    Parameters:
      `command` - the runnable task
      `timeout` - the length of time to wait for the task to complete
      `unit` - the units in which timeout is expressed
    Throws:
      `RejectedExecutionException` - if this task cannot be accepted for execution - the queue is full
      `NullPointerException` - if command or unit is null