mjm*_*yer 3 c
我正在实现一个服务器模拟程序,并且想要检查是否通过 TCP/IP 套接字的 recv 接收到了任何内容,而无需等待。当我放置 MSG_DONTWAIT 标志时,recv 返回长度为 -1 和“资源暂时可用”的 errno。当使用 MSG_WAITALL 标志时,该调用有效。
Ste*_*f K 5
这不是错误,而是预期的行为。MSG_DONTWAIT 的文档指出:
如果没有可用数据,则不会阻塞,而是立即返回并返回错误 EAGAIN。
这意味着您应该等待并处理这种情况。
请在此处查看参考资料,并在此处查看类似的讨论。
归档时间:
13 年,2 月 前
查看次数:
17898 次
最近记录:
11 年,7 月 前