如何从g_poll中获取特定错误?

时间:2013-08-12 05:12:34

标签: c glib

g_poll()函数返回-1 “出错或者呼叫被中断”。 (见:https://developer.gnome.org/glib/2.28/glib-The-Main-Event-Loop.html#g-poll)。

如果g_poll返回-1,我如何确定这是因为呼叫被中断还是出现错误?

如果是错误,我该如何确定错误原因?是否足以查看errno

1 个答案:

答案 0 :(得分:4)

是。如果errno返回g_poll(),请检查 -1 。文档还说

  

gpoll()轮询fds,与poll()系统调用一样,但可移植。
  在没有poll()的系统上,使用select()模拟它。

即。 g_poll()在内部使用 poll() select() 。 因此,请poll()select()

检查errno设置为各种值的各种方案