微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

unix – 哪些系统将EAGAIN和EWOULDBLOCK定义为不同的值?

只是好奇。哪些系统提供EAGAIN和EWOULDBLOCK#将它们定义为不同的值?
有一些… http://www.gnu.org/s/hello/manual/libc/Error-Codes.html

Portability Note: In many older Unix systems,this condition was indicated by EWOULDBLOCK,which was a distinct error code different from EAGAIN. To make your program portable,you should check for both codes and treat them the same.

http://lists.parisc-linux.org/hypermail/parisc-linux/9895.html

On some SysV systems EAGAIN != EWOULDBLOCK. I think we inherited the
errno deFinitions from HPUX…

较老的AIX也是这样的系统:http://programming.itags.org/unix-linux-programming/81597/

HP-UX (and older versions of AIX)

对于AIX,我找到了代码列表:http://homepage3.nifty.com/owl_h0h0/unix/job/UNIX/tutorial/error.html

11 EAGAIN;
54 EWOULDBLOCK

OS / 390也是:http://web.archiveorange.com/archive/v/zvbaIz8u6TzsQHHjfzOi

OS/390 and other platforms where EWOULDBLOCK != EAGAIN

有更丰富的表:http://www.ioplex.com/~miallen/errcmp.html

SUSv3   AIX 4.3,5.1 HP-UX 11.22 Solaris 9,10    Linux 2.4.28,2.6.9  IRIX 6.5[4] OSF1    FreeBSD 5.2.1   OSX 10.3.8  MSVC6
EAGAIN  1   0   Resource unavailable,try again [3] 11  Resource temporarily unavailable    11  No more processes   11  Resource temporarily unavailable    11  Try again   11  Resource temporarily unavailable    11  ditto   35  Resource temporarily unavailable    35  Resource temporarily unavailable    11  Resource temporarily unavailable

EWOULDBLOCK 0.9 0   Operation would block [3]   54  Operation would block [2]   246 Operation would block   11      11  Operation would block   11  Resource temporarily unavailable    35  Operation would block   35  Operation would block   35  Operation would block

所以,AIX 4.3,5.1; HP-UX 11.22和OSF1对EAGAIN和EWOULDBLOCK使用不同的代码

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐