【发布时间】:2015-05-05 06:36:07
【问题描述】:
我很难在网上找到答案。
在 Linux 上调用 select 读取文件并且套接字设置为非阻塞时应该发生什么 ?
正如选择手册页所述,我认为这不是微不足道的:
Those listed in readfds will be watched to see if characters become available for reading (more precisely, to see if a read will not block; in particular, a file descriptor is also ready on end-of-file)
如果套接字设置为非阻塞,它不应该阻塞,应该选择立即返回吗?这听起来不对……海德文档是错误的还是忽略了这种情况?
另外,如果 select 确实会阻塞,它的返回值应该是多少?读取套接字不会阻塞,但套接字没有可读取的数据..
当我回到家时,我会编写一些代码示例并编辑这个问题,这对其他任何在谷歌上搜索这个主题的人都有很大帮助。
【问题讨论】:
标签: linux sockets select nonblocking