Interface ProcessExecutor

All Superinterfaces:
Executor, ExecutorService
All Known Implementing Classes:
ThreadPoolProcessExecutor

public interface ProcessExecutor extends ExecutorService
An Executor that provides methods to manage termination and methods that can produce a Progress for tracking one or more asynchronous tasks.

Method submit extends base method ExecutorService.submit(java.util.concurrent.Callable<T>) by creating and returning a Progress that can be used to track how a process is doing in addition to cancelling execution and/or waiting for completion.

Author:
Jody
  • Method Details

    • submit

      Progress submit(Process task, Map<String,Object> input)
      Submits a process for execution and returns a Progress representing the pending results of the task.

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

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

      Parameters:
      task - the task to submit
      Returns:
      a Progress representing pending completion of the task
      Throws:
      RejectedExecutionException - if task cannot be scheduled for execution
      NullPointerException - if task null