This can be more convenient for use by language bindings or in other cases where the refcounted nature of Bytes is helpful over a bare pointer interface.
However, note that this function may still perform partial writes, just like write. If that occurs, to continue writing, you will need to create a new Bytes containing just the remaining bytes, using Bytes.from_bytes. Passing the same Bytes instance multiple times potentially can result in duplicated data in the output stream.
the Bytes to write
optional cancellable object
Number of bytes written, or -1 on error