return writeGathering(nfd.getNativeFD(), srcs, offset, length);
return VmChannel.writeGathering(nfd.getNativeFD(), srcs, offset, length);
  public long writeGathering(ByteBuffer[] srcs, int offset, int length)    throws IOException  {    if (offset + length > srcs.length)      throw new IndexOutOfBoundsException("offset + length > srcs.length");        // A gathering write is limited to 16 buffers; when writing, ensure    // that we have at least one buffer with something in it in the 16    // buffer window starting at offset.    while (!srcs[offset].hasRemaining() && offset < srcs.length)      offset++;        // There are no buffers with anything to write.    if (offset == srcs.length)      return 0;    // If we advanced `offset' so far that we don't have `length'    // buffers left, reset length to only the remaining buffers.    if (length > srcs.length - offset)      length = srcs.length - offset;    return writeGathering(nfd.getNativeFD(), srcs, offset, length);  }