方法

Gio Cancellable make_pollfd

自:2.22

声明 [src]

gboolean
g_cancellable_make_pollfd (
  GCancellable* cancellable,
  GPollFD* pollfd
)

描述 [src]

创建与 cancellable 对应的 GPollFD;这可以传递给 g_poll() 用于轮询取消。这对既没有本地轮询又不具备移植到Windows平台的Unix系统都很有用。

当此函数返回 TRUE 时,应使用 g_cancellable_release_fd() 释放为 pollfd 分配的资源。在返回 FALSE 后,不要调用 g_cancellable_release_fd()

如果此函数返回 FALSE,则可能是没有提供 cancellable 或资源限制阻止此函数为轮询分配必要的结构。在Linux上,你可能会达到文件描述符的最大数量。

不应自行从fd读取,只需检查可读状态。通过g_cancellable_reset()来读取以取消可读状态。

自:2.22

参数

pollfd

类型: GPollFD

GPollFD 的指针。

数据由方法的调用者拥有。

返回值

类型: gboolean

如果 pollfd 成功初始化,则返回 TRUE,在无法为cancellable准备时返回 FALSE