EAGAIN 是什么意思?
如标题所示,EAGAIN 是什么意思?
As in the title what does EAGAIN mean?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
如标题所示,EAGAIN 是什么意思?
As in the title what does EAGAIN mean?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(5)
EAGAIN 在执行 非阻塞 I/O。这意味着“目前没有可用数据,请稍后重试”。。
它可能(或可能不会)与
EWOULDBLOCK
相同,这意味着“你的线程必须阻塞才能执行此操作”。EAGAIN is often raised when performing non-blocking I/O. It means "there is no data available right now, try again later".
It might (or might not) be the same as
EWOULDBLOCK
, which means "your thread would have to block in order to do that".使用 man 2 简介 | less -Ip EAGAIN:
Using
man 2 intro | less -Ip EAGAIN
:这意味着什么并不那么重要。这意味着:
EAGAIN
的全部内容是您的进程不会在系统调用内被阻塞;它有权选择:要么重试,要么做一些有用的事情。What it means is less important. What it implies:
The whole thing about
EAGAIN
is that your process is not blocked inside the system call; it has the right to choose: either retry or do something useful.摘录 errno(3) - Linux 手册页:
使用案例:当epoll处于ET模式时,仅在读或写返回EAGAIN后等待
Excerpt errno(3) - Linux manual page:
Use case: When epoll in ET mode, only wait after read or write return EAGAIN
根据 此,它的意思是“操作会导致进程暂停。”
According to this, it means "Operation would have caused the process to be suspended."