Interface Clock


  • public interface Clock
    Used to measure absolute and relative time. see "MockClock" for a clock that can be manually advanced for use in tests.
    • Field Detail

      • SYSTEM

        static final Clock SYSTEM
    • Method Detail

      • newClock

        static Clock newClock​(Clock clock)
        Create a monitoring clock base on a Clock.
        Parameters:
        clock - the clock to rely on.
        Returns:
        a new monitoring clock instance based on the Clock.
      • wallTime

        long wallTime()
        Current wall time in milliseconds since the epoch. Typically equivalent to System.currentTimeMillis. Should not be used to determine durations. Used for timestamping metrics being pushed to a monitoring system or for determination of step boundaries (e.g. StepLong).
        Returns:
        Wall time in milliseconds
      • monotonicTime

        long monotonicTime()
        Current time from a monotonic clock source. The value is only meaningful when compared with another snapshot to determine the elapsed time for an operation. The difference between two samples will have a unit of nanoseconds. The returned value is typically equivalent to System.nanoTime.
        Returns:
        Monotonic time in nanoseconds