Linux - 非阻塞socket编程处理EAGAIN错误
来源:互联网 发布:js 判断时间有效性 编辑:程序博客网 时间:2024/06/10 02:56
在linux进行非阻塞的socket接收数据时经常出现Resource temporarily unavailable,errno代码为11(EAGAIN),这表明你在非阻塞模式下调用了阻塞操作,在该操作没有完成就返回这个错误,这个错误不会破坏socket的同步,不用管它,下次循环接着recv就可以。对非阻塞socket而言,EAGAIN不是一种错误。在VxWorks和Windows上,EAGAIN的名字叫做EWOULDBLOCK。
另外,如果出现EINTR即errno为4,错误描述Interrupted system call,操作也应该继续。
最后,如果recv的返回值为0,那表明连接已经断开,我们的接收操作也应该结束。
0 0
- Linux - 非阻塞socket编程处理EAGAIN错误
- linux非阻塞的socket EAGAIN的错误处理
- linux非阻塞的socket EAGAIN的错误处理
- linux非阻塞的socket EAGAIN的错误处理
- linux非阻塞的socket发送数据出现EAGAIN错误的处理方法
- udp 非阻塞socket报 EAGAIN
- linux非阻塞的socket EGGAIN的错误处理
- linux 客户端 Socket 非阻塞connect编程
- linux 客户端 Socket 非阻塞connect编程
- linux客户端Socket非阻塞connect编程
- Linux 客户端 Socket 非阻塞connect编程
- linux 客户端 Socket 非阻塞connect编程
- linux客户端Socket非阻塞connect编程
- linux客户端Socket非阻塞connect编程
- linux 客户端 Socket 非阻塞connect编程
- linux 客户端 Socket 非阻塞connect编程
- linux 客户端 Socket 非阻塞connect编程
- linux 客户端 Socket 非阻塞connect编程
- POJ2488 A Knight's Journey(DFS)
- 揭开私有继承的面纱
- Qt中的线程
- 嵌入式LINUX环境下视频采集知识(V4L2)
- 使用setsockopt()来控制recv()与send()的超时,在阻塞时
- Linux - 非阻塞socket编程处理EAGAIN错误
- Mac使用技巧之Finder的个人收藏
- XDOJ1261 - 递推2
- javascript xml字符串转为JSON对象
- 解析oracle的rownum
- Python(2.7.x)文件操作的简单示例
- 大数
- ZOJ 3666 Alice and Bob 基础博弈
- 数学分割问题