void executeByImpatientReader(@NotNull Runnable runnable) throws ApplicationUtil.CannotRunReadActionException {
    // If implicit read lock is disabled, don't check for write thread, check for true read lock
    if (allowImplicitRead) {
      checkReadThreadAccess();
    }
    Reader status = R.get();
    boolean old = status.impatientReads;
    try {
      status.impatientReads = true;
      runnable.run();
    }
    finally {
      status.impatientReads = old;
    }
  }
void executeByImpatientReader(@NotNull Runnable runnable)