Package zmq.util

Class Timers

java.lang.Object
zmq.util.Timers

public final class Timers extends Object
Manages set of timers. Timers can be added with a given interval, when the interval of time expires after addition, handler method is executed with given arguments. Timer is repetitive and will be executed over time until canceled. This is a DRAFT class, and may change without notice.
  • Field Details

  • Constructor Details

    • Timers

      public Timers()
    • Timers

      public Timers(Supplier<Long> clock)
      Builds a new timer.

      This constructor is for testing and is not intended to be used in production code.

      Parameters:
      clock - the supplier of the current time in milliseconds.
  • Method Details

    • now

      private long now()
    • insert

      private boolean insert(Timers.Timer timer)
    • add

      public Timers.Timer add(long interval, Timers.Handler handler, Object... args)
      Add timer to the set, timer repeats forever, or until cancel is called.
      Parameters:
      interval - the interval of repetition in milliseconds.
      handler - the callback called at the expiration of the timer.
      args - the optional arguments for the handler.
      Returns:
      an opaque handle for further cancel.
    • setInterval

      @Deprecated public boolean setInterval(Timers.Timer timer, long interval)
      Deprecated.
      Changes the interval of the timer. This method is slow, canceling existing and adding a new timer yield better performance.
      Parameters:
      timer - the timer to change the interval to.
      Returns:
      true if set, otherwise false.
    • reset

      @Deprecated public boolean reset(Timers.Timer timer)
      Deprecated.
      Reset the timer. This method is slow, canceling existing and adding a new timer yield better performance.
      Parameters:
      timer - the timer to reset.
      Returns:
      true if reset, otherwise false.
    • cancel

      @Deprecated public boolean cancel(Timers.Timer timer)
      Deprecated.
      Cancel a timer.
      Parameters:
      timer - the timer to cancel.
      Returns:
      true if cancelled, otherwise false.
    • timeout

      public long timeout()
      Returns the time in millisecond until the next timer.
      Returns:
      the time in millisecond until the next timer.
    • execute

      public int execute()
      Execute the timers.
      Returns:
      the number of timers triggered.
    • entries

    • sleepAndExecute

      public int sleepAndExecute()