Class BackgroundTask

  • All Implemented Interfaces:
    BlockingTask, Task

    public class BackgroundTask
    extends Object
    implements BlockingTask
    A sleepless blocking task that runs in a Thread the background. The execution is blocked until the task budget is exhausted. All background tasks are constrained by a time budget.
    • Method Detail

      • run

        public boolean run​(BooleanSupplier supplier)
        Description copied from interface: BlockingTask
        Run the task
        Specified by:
        run in interface BlockingTask
        Parameters:
        supplier - the task as a boolean supplier. The result is used to check if the task has completed or not. The supplier must return true if the execution has completed or false otherwise.
        Returns:
        true if the task has completed successfully or false if: 1) the budget is exhausted or 2) the task was interrupted.
      • elapsed

        public Duration elapsed()
        Description copied from interface: Task
        How long it took to run the task
        Specified by:
        elapsed in interface Task
        Returns:
        The duration to execute the task