函数
Giopollable_stream_write
自:2.34
声明 [源]
gssize
g_pollable_stream_write (
GOutputStream* stream,
void* buffer,
gsize count,
gboolean blocking,
GCancellable* cancellable,
GError** error
)
描述 [源]
尝试写入 stream(与 g_output_stream_write() 类似,如果 blocking 为 TRUE)或 g_pollable_output_stream_write_nonblocking()(如果 blocking 为 FALSE)。这可以用于在不同方法阻塞和非阻塞实现之间更轻松地共享代码。
如果 blocking 为 FALSE,则 stream 必须是 GPollableOutputStream,对于该 stream,g_pollable_output_stream_can_poll() 返回 TRUE,否则行为是未定义的。如果 blocking 为 TRUE,则 stream 不必须是 GPollableOutputStream。
自 2.34 起可用
参数
stream-
类型:
GOutputStream一个
GOutputStream。数据由函数的调用者所有。 buffer-
类型:一个包含
guint8的数组包含要写入的数据的缓冲区。
数组的长度在 count 参数中指定。 数据由函数的调用者所有。 count-
类型:
gsize要写入的字节数。
blocking-
类型:
gboolean是否执行阻塞 I/O。
cancellable-
类型:
GCancellable可选的
GCancellable对象,NULL表示忽略。该参数可以是 NULL。数据由函数的调用者所有。 error-
类型:
GError **一个可恢复错误的返回位置。
该参数可以是 NULL。如果返回位置不是 NULL,则必须将其初始化为NULLGError*。如果没有错误,则函数会将该参数保留为 NULL。在发生错误的情况下,该参数将设置为一个新的分配的 GError;调用者将拥有数据,并负责释放它。