poll()和read()"资源暂时不可用"

时间:2015-12-24 05:43:01

标签: c linux pipe polling

我遇到read()问题"资源暂时不可用"。 我使用PIPE作为线程之间的IPC。

在我的程序中,读取线程检查PIPE是否有使用poll()的数据,然后来自PIPE的read()。 但是,有时read()会返回-1并显示以下错误。

  

资源暂时不可用

我不知道为什么read()poll()检查后返回错误。

1 个答案:

答案 0 :(得分:3)

您可能已将管道fd设置为非阻塞模式O_NONBLOCK,并且当在空文件上进行读取时,它将返回EAGAIN。