InputStream.readBytesAsync

Request an asynchronous read of count bytes from the stream into a new #GBytes. When the operation is finished callback will be called. You can then call gio.input_stream.InputStream.readBytesFinish to get the result of the operation.

During an async request no other sync and async calls are allowed on stream, and will result in gio.types.IOErrorEnum.Pending errors.

A value of count larger than G_MAXSSIZE will cause a gio.types.IOErrorEnum.InvalidArgument error.

On success, the new #GBytes will be passed to the callback. It is not an error if this is smaller than the requested size, as it can happen e.g. near the end of a file, but generally we try to read as many bytes as requested. Zero is returned on end of file (or if count is zero), but never otherwise.

Any outstanding I/O request with higher priority (lower numerical value) will be executed before an outstanding request with lower priority. Default priority is G_PRIORITY_DEFAULT.

class InputStream
void
readBytesAsync

Parameters

count size_t

the number of bytes that will be read from the stream

ioPriority int

the [I/O priority][io-priority] of the request

cancellable gio.cancellable.Cancellable

optional #GCancellable object, null to ignore.

callback gio.types.AsyncReadyCallback

a #GAsyncReadyCallback to call when the request is satisfied