Class CachedClock

  • All Implemented Interfaces:
    Clock

    public final class CachedClock
    extends 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 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