private void suspendCacheTimeMillis(boolean stw) {
    // Increment stop time at each call of this method.
    if (stw) {
      long oldSt;
      long newSt;
      do {
        oldSt = suspendedTime.get();
        if (oldSt == 0) {
          newSt = System.currentTimeMillis();
        } else {
          newSt = oldSt + 1;
        }
      } while (!suspendedTime.compareAndSet(oldSt, newSt));
    } else {
      suspendedTime.set(0);
    }
  }
This method is called by a timer task which takes control of cache time and increments the
cache time at each call of this method.

The timer task must be called each millisecond. We need to revisit the method implementation if
that condition is changed.

@param stw True if Stop the world for this cache for a while.
geode-core/src/main/java/org/apache/geode/distributed/internal/DSClock.java