PollableInputStreamIF.readNonblocking

Attempts to read up to @count bytes from @stream into @buffer, as with g_input_stream_read(). If @stream is not currently readable, this will immediately return %G_IO_ERROR_WOULD_BLOCK, and you can use g_pollable_input_stream_create_source() to create a #GSource that will be triggered when @stream is readable.

Note that since this method never blocks, you cannot actually use @cancellable to cancel it. However, it will return an error if @cancellable has already been cancelled when you call, which may happen if you call this method after a source triggers due to having been cancelled.

interface PollableInputStreamIF
ptrdiff_t
readNonblocking

Parameters

buffer ubyte[]

a buffer to read data into (which should be at least @count bytes long).

cancellable Cancellable

a #GCancellable, or %NULL

Return Value

Type: ptrdiff_t

the number of bytes read, or -1 on error (including %G_IO_ERROR_WOULD_BLOCK).

Throws

GException on failure.

Meta