Interface ExecutionStrategy

All Known Implementing Classes:
AdaptiveExecutionStrategy, EatWhatYouKill, ExecuteProduceConsume, ProduceConsume, ProduceExecuteConsume

public interface ExecutionStrategy

An ExecutionStrategy executes Runnable tasks produced by a ExecutionStrategy.Producer. The strategy to execute the task may vary depending on the implementation; the task may be run in the calling thread, or in a new thread, etc.

The strategy delegates the production of tasks to a ExecutionStrategy.Producer, and continues to execute tasks until the producer continues to produce them.

  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static interface 
    A producer of Runnable tasks to run.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Initiates (or resumes) the task production and consumption.
    void
    Initiates (or resumes) the task production and consumption.
  • Method Details

    • dispatch

      void dispatch()

      Initiates (or resumes) the task production and consumption.

      This method guarantees that the task is never run by the thread that called this method.

      See Also:
    • produce

      void produce()

      Initiates (or resumes) the task production and consumption.

      The produced task may be run by the same thread that called this method.

      See Also: