void resume(boolean callResume) {
    assertNotResumed();
    if (isEvaluating()) {
      logError("Resuming context " + this + " while evaluating");
    }
    DebuggerManagerThreadImpl.assertIsManagerThread();
    try {
      if (!Patches.IBM_JDK_DISABLE_COLLECTION_BUG) {
        // delay enable collection to speed up the resume
        for (ObjectReference r : myKeptReferences) {
          myDebugProcess.getManagerThread().schedule(PrioritizedTask.Priority.LOWEST, () -> DebuggerUtilsEx.enableCollection(r));
        }
        myKeptReferences.clear();
      }

      cancelAllPostponed();
      if (callResume) {
        if (LOG.isDebugEnabled()) {
          LOG.debug("Resuming " + this);
        }
        resumeImpl();
      }
    }
    finally {
      myIsResumed = true;
      Disposer.dispose(this);
    }
  }
void resume(boolean callResume)