Interface ExecutorService

All Superinterfaces:
Executor, ExecutorService
All Known Subinterfaces:
ScheduledExecutorService, ShutdownableExecutorService, ShutdownableScheduledExecutorService
All Known Implementing Classes:
ShutdownableExecutorServiceImpl, ShutdownableScheduledExecutorServiceImpl, ThreadPoolExecutor, TimeScheduledThreadPoolExecutor

public interface ExecutorService extends ExecutorService
An analog to ExecutorService except that the futures returned are AsyncFutures.
  • Method Details

    • submit

      <T> AsyncFuture<T> submit(Callable<T> task)
      Submits a value-returning task for execution and returns a Future representing the pending results of the task. The Future's get method will return the task's result upon successful completion.

      If you would like to immediately block waiting for a task, you can use constructions of the form result = exec.submit(aCallable).get();

      Note: The Executors class includes a set of methods that can convert some other common closure-like objects, for example, PrivilegedAction to Callable form so they can be submitted.

      Specified by:
      submit in interface ExecutorService
      Type Parameters:
      T - the type of the task's result
      Parameters:
      task - the task to submit
      Returns:
      a Future representing pending completion of the task
      Throws:
      RejectedExecutionException - if the task cannot be scheduled for execution
      NullPointerException - if the task is null
    • submit

      <T> AsyncFuture<T> submit(Runnable task, T result)
      Submits a Runnable task for execution and returns a Future representing that task. The Future's get method will return the given result upon successful completion.
      Specified by:
      submit in interface ExecutorService
      Type Parameters:
      T - the type of the result
      Parameters:
      task - the task to submit
      result - the result to return
      Returns:
      a Future representing pending completion of the task
      Throws:
      RejectedExecutionException - if the task cannot be scheduled for execution
      NullPointerException - if the task is null
    • submit

      AsyncFuture<?> submit(Runnable task)
      Submits a Runnable task for execution and returns a Future representing that task. The Future's get method will return null upon successful completion.
      Specified by:
      submit in interface ExecutorService
      Parameters:
      task - the task to submit
      Returns:
      a Future representing pending completion of the task
      Throws:
      RejectedExecutionException - if the task cannot be scheduled for execution
      NullPointerException - if the task is null