Class CachedClock

  • All Implemented Interfaces:
    Clock

    public final class CachedClock
    extends java.lang.Object
    implements Clock
    Implementation of the Clock interface that tracks the time in a private long field that is updated by a background thread once every millisecond. Timers on most platforms do not have millisecond granularity, so the returned value may "jump" every 10 or 16 milliseconds. To reduce this problem, this class also updates the internal time value every 1024 calls to currentTimeMillis().
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      long currentTimeMillis()
      Returns the value of a private long field that is updated by a background thread once every millisecond.
      static CachedClock instance()  
      • Methods inherited from class java.lang.Object

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

      • currentTimeMillis

        public long currentTimeMillis()
        Returns the value of a private long field that is updated by a background thread once every millisecond. Timers on most platforms do not have millisecond granularity, the returned value may "jump" every 10 or 16 milliseconds. To reduce this problem, this method also updates the internal time value every 1024 calls.
        Specified by:
        currentTimeMillis in interface Clock
        Returns:
        the cached time