docs: public long read(long pos, Iterable<ByteBuffer> bufs) {
      if (pos >= size()) {
        return -1;
      }
  
      long start = pos;
      for (ByteBuffer buf : bufs) {
        int read = read(pos, buf);
        if (read == -1) {
          break;
        } else {
          pos += read;
        }
      }
  
      return pos - start;
    }