Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sockets Select系统调用的虚假准备就绪通知_Sockets_Select_System Calls - Fatal编程技术网

Sockets Select系统调用的虚假准备就绪通知

Sockets Select系统调用的虚假准备就绪通知,sockets,select,system-calls,Sockets,Select,System Calls,在上,在BUGS部分中提到,select系统调用有时可能会错误地将FD设置为ready,随后的read调用将返回0。本文描述了一个这样的例子(错误的校验和),但我假设还有其他原因(否则他们会修复这个问题) 你知道Select错误返回FD ready的其他原因是什么吗 这是否也适用于其他操作系统。我目前正在询问有关Linux的问题 以上链接的相关部分: 在Linux下,select()可能会报告 套接字文件描述符为“准备就绪” “阅读”,尽管如此 后续读取块。这可能是因为 示例发生在数据到达时 但

在上,在BUGS部分中提到,select系统调用有时可能会错误地将FD设置为ready,随后的read调用将返回0。本文描述了一个这样的例子(错误的校验和),但我假设还有其他原因(否则他们会修复这个问题)

你知道Select错误返回FD ready的其他原因是什么吗

这是否也适用于其他操作系统。我目前正在询问有关Linux的问题

以上链接的相关部分:

在Linux下,select()可能会报告 套接字文件描述符为“准备就绪” “阅读”,尽管如此 后续读取块。这可能是因为 示例发生在数据到达时 但经审查,这是错误的 校验和被丢弃。可能有 是指在其他情况下 描述符被错误地报告为 准备好的因此,使用它可能更安全 O_非阻塞不应 街区


这并不是一个确切的答案,但纵观epoll,这些问题似乎已经解决了

如果我可以信任netdev,他们至少尝试在poll()和select()中修复它(破坏其他东西)

因此,在可预见的将来,这个bug似乎并不相关