docs: @Override
      public long read(long numBytes, int timeout) throws IOException {
  
          long readCount = 0;
          H2StreamProcessor p = muxLink.getStreamProcessor(streamID);
  
          try {
              p.getReadLatch().await(timeout, TimeUnit.MILLISECONDS);
              readCount = p.readCount(numBytes, this.getBuffers());
          } catch (InterruptedException e) {
              throw new IOException("read was stopped by an InterruptedException: " + e);
          }
          return readCount;
      }