6061626364656667686970
if (isClosing()) { future.setValue(new IOException("Closed")); } else { synchronized (buffer) { if (pending != null) { throw new ReadPendingException(); } pending = future; } doRead(false); }