Interface DelayTask


public interface DelayTask
Lightweight controllable delayed task. The task will be executed after a specified time, can be cancelled, and its delay time can be increased.
Since:
21.16
Author:
渔民小镇
date:
2024-09-01
  • Method Details

    • getTaskId

      String getTaskId()
      get taskId
      Returns:
      taskId
    • getTaskListener

      <T extends TaskListener> T getTaskListener()
      Get the task listener object
      Type Parameters:
      T - t
      Returns:
      task listener
    • isActive

      boolean isActive()
      Whether the task is active
      Returns:
      true if active
    • cancel

      void cancel()
      Cancel the task
    • getMillis

      long getMillis()
      Remaining delay time in milliseconds
      Returns:
      remaining delay time in milliseconds
    • plusTime

      default DelayTask plusTime(Duration duration)
      Increase delay time
      Parameters:
      duration - duration
      Returns:
      DelayTask
    • plusTimeMillis

      DelayTask plusTimeMillis(long millis)
      Increase delay time

      for example

      DelayTask delayTask = ...;
      delayTask.plusTimeMillis(500);  // Increase delay by 0.5 seconds
      delayTask.plusTimeMillis(-500); // Decrease delay by 0.5 seconds
      
      Parameters:
      millis - millis (when negative, means decreasing delay time)
      Returns:
      DelayTask
    • minusTimeMillis

      default DelayTask minusTimeMillis(long millis)
      Decrease delay time

      for example

      DelayTask delayTask = ...;
      delayTask.minusTimeMillis(500);  // Decrease delay by 0.5 seconds
      delayTask.minusTimeMillis(-500); // Increase delay by 0.5 seconds
      
      Parameters:
      millis - millis (when negative, means increasing delay time)
      Returns:
      DelayTask
    • minusTime

      default DelayTask minusTime(Duration duration)
      Decrease delay time
      Parameters:
      duration - duration
      Returns:
      DelayTask
    • task

      DelayTask task()
      Start the delayed task
      Returns:
      DelayTask