docs: private void endBlocking(boolean completed) throws AsynchronousCloseException {
      synchronized (blockingThreads) {
        blockingThreads.remove(Thread.currentThread());
      }
      end(completed);
    }