函数

GLibUnixPipeclose

自从:2.80

声明 [src]

gboolean
g_unix_pipe_close (
  GUnixPipe* self,
  GUnixPipeEnd end,
  GError** error
)

描述 [src]

关闭管道的一端,并在返回之前将 fds 的相关成员设置为 -1,等同于 g_clear_fd()。

类似于 g_close(),如果在关闭文件描述符时失败,错误将存储在 %errno 和 error 中。如果此函数调用成功,%errno 不确定。

如果 errorNULLfds 的相关成员是负数或有效的打开文件描述符,则此函数是 async-signal 安全的。这使得在那些条件下从信号处理程序或 GSpawnChildSetupFunc 中调用它成为可能。有关更多信息,请参阅 signal(7)signal-safety(7)

要关闭两个文件描述符并忽略任何错误,请使用 g_unix_pipe_clear() 代替。

从:2.80

此函数不直接对语言绑定可用。

参数

self

类型: GUnixPipe

一对文件描述符。

数据由函数的调用者拥有。
end

类型: GUnixPipeEnd

管道的一端。

error

类型: GError **

可恢复错误的返回位置。

参数可以是 NULL
如果返回位置不是 NULL,则必须将其初始化为 NULL GError*
如果没有错误,则函数将留初始化的参数为 NULL
如果发生错误,参数将设置为新分配的 GError;调用者将拥有数据,并负责释放它。

返回值

类型: gboolean

成功时返回 TRUE