Interface ICancellableTask


public interface ICancellableTask
A task that can be canceled.

The task is launched by calling the run() method. While the task is executing, if another thread calls the cancel() method of that task, then it gets the opportunity to signal that the run() method should stop executing and return early. This can be achieved either by e.g. setting an atomic flag that the run method will periodically check, or by calling a specific abort method on an external API (e.g. a Http request class).

  • Method Summary Link icon

    Modifier and Type
    Method
    Description
    void
    Signals that the task should be canceled.
    void
    run()
    Executes the cancellable task and waits for it to finish.
  • Method Details Link icon

    • run Link icon

      void run()
      Executes the cancellable task and waits for it to finish.

      This call is synchronous, and thus blocking.

    • cancel Link icon

      void cancel()
      Signals that the task should be canceled.

      Can be called from any thread. Calling this method synchronously before calling run() prevents run() from doing any work, while calling it synchronously after run() has no effect.