EAGAIN是什么意思?

时间:2010-10-30 10:57:41

标签: c sockets unix posix

在标题中,EAGAIN是什么意思?

4 个答案:

答案 0 :(得分:59)

执行EAGAIN时经常会出现{p> non-blocking I/O。这意味着“目前没有可用的数据,请稍后再试”

might(或might not)与EWOULDBLOCK相同,这意味着“您的线程必须阻止才能执行此操作”

答案 1 :(得分:15)

使用man 2 intro | less -Ip EAGAIN

     35 EAGAIN Resource temporarily unavailable.  This is a temporary condi-
         tion and later calls to the same routine may complete normally.

答案 2 :(得分:5)

它意味着什么不那么重要。这意味着什么:

  • 您的系统调用失败
  • 什么都没发生(系统调用是原子的,而且这个没有发生)
  • 可以再次尝试(它可能会再次失败,可能会有不同的结果)
  • 可以选择其他方式。

EAGAIN的全部内容是您的进程未在系统调用中被阻止;它有权选择:重试或做一些有用的事情。

答案 3 :(得分:0)

根据this,这意味着“操作会导致该过程暂停。”