public void resume(Collection<String> threadNames) {
    suspend = false;
    if (threadNames != null) {
      timeSuspendedThreads.removeAll(threadNames);
    }
  }
Resumes the passage of time when {@link #sleep(long)} (or related functions) are called from the given
{@code threadNames}. Those functions still continue to return immediately.
Note that any blanket suspensions will be lifted (i.e. call to {@link #suspend(Collection)} with {@code null}
{@code threadNames}) even if the {@code threadNames} is not {@code null}.
@param threadNames the names of the threads for which the passage of time has to be resumed on calls to sleep().
                   Can be {@code null}.
ambry-test-utils/src/main/java/com/github/ambry/utils/MockTime.java