Class HighResolutionClock


  • public class HighResolutionClock
    extends java.lang.Object
    Clock that provides the number of time units since the 1 Jan 1970 UTC.

    This implementation may be replaced on some platforms for greater performance.

    Note: The actual provided resolution may be a higher granularity than the possible precision. For example, on Java 8 many JVMs will only advance a millisecond per tick so when requesting micros or nanos then the returned time may be a multiple of milliseconds. Later JVMs tend to improve on this.

    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static long epochMicros()
      The number of microseconds since the 1 Jan 1970 UTC.
      static long epochMillis()
      The number of milliseconds since the 1 Jan 1970 UTC.
      static long epochNanos()
      The number of nanoseconds since the 1 Jan 1970 UTC.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • HighResolutionClock

        public HighResolutionClock()
    • Method Detail

      • epochMillis

        public static long epochMillis()
        The number of milliseconds since the 1 Jan 1970 UTC.
        Returns:
        the number of milliseconds since the 1 Jan 1970 UTC.
      • epochMicros

        public static long epochMicros()
        The number of microseconds since the 1 Jan 1970 UTC.
        Returns:
        the number of microseconds since the 1 Jan 1970 UTC.
      • epochNanos

        public static long epochNanos()
        The number of nanoseconds since the 1 Jan 1970 UTC.

        Precision depends upon the JVM version used. Hotspot/OpenJDK 8 provides millisecond level precision, 11 provides microsecond or lower granularity.

        Returns:
        the number of nanoseconds since the 1 Jan 1970 UTC.