pollableStreamRead

Tries to read from @stream, as with g_input_stream_read() (if @blocking is %TRUE) or g_pollable_input_stream_read_nonblocking() (if @blocking is %FALSE). This can be used to more easily share code between blocking and non-blocking implementations of a method.

If @blocking is %FALSE, then @stream must be a #GPollableInputStream for which g_pollable_input_stream_can_poll() returns %TRUE, or else the behavior is undefined. If @blocking is %TRUE, then @stream does not need to be a #GPollableInputStream.

ptrdiff_t
pollableStreamRead

Parameters

stream InputStream

a #GInputStream

buffer ubyte[]

a buffer to read data into

blocking bool

whether to do blocking I/O

cancellable Cancellable

optional #GCancellable object, %NULL to ignore.

Return: the number of bytes read, or -1 on error.

Throws

GException on failure.

Meta

Since

2.34