code: private int writeBytesMultiple(ChannelOutboundBuffer in, IovArray array) throws IOException {
          final long expectedWrittenBytes = array.size();
          assert expectedWrittenBytes != 0;
          final int cnt = array.count();
          assert cnt != 0;
  
          final long localWrittenBytes = socket.writevAddresses(array.memoryAddress(0), cnt);
          if (localWrittenBytes > 0) {
              adjustMaxBytesPerGatheringWrite(expectedWrittenBytes, localWrittenBytes, array.maxBytes());
              in.removeBytes(localWrittenBytes);
              return 1;
          }
          return WRITE_STATUS_SNDBUF_FULL;
      }
docs: Write multiple bytes via {@link IovArray}.
  @param in the collection which contains objects to write.
  @param array The array which contains the content to write.
  @return The value that should be decremented from the write quantum which starts at
  {@link ChannelConfig#getWriteSpinCount()}. The typical use cases are as follows:
  <ul>
  <li>0 - if no write was attempted. This is appropriate if an empty {@link ByteBuf} (or other empty content)
  is encountered</li>
  <li>1 - if a single call to write data was made to the OS</li>
  <li>{@link ChannelUtils#WRITE_STATUS_SNDBUF_FULL} - if an attempt to write data was made to the OS, but
  no data was accepted</li>
  </ul>
  @throws IOException If an I/O exception occurs during write.