InputStream.readBytesAsync
void readBytesAsync(size_t count, int ioPriority, gio.cancellable.Cancellable cancellable = null, gio.types.AsyncReadyCallback callback = null)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 glib.types.PRIORITY_DEFAULT.
Parameters
count | the number of bytes that will be read from the stream |
ioPriority | the I/O priority of the request |
cancellable | optional #GCancellable object, null to ignore. |
callback | a #GAsyncReadyCallback to call when the request is satisfied |