我可以测试这个以找到行为,但这不是重点。在另一个问题的my answer中,评论者建议从另一个线程关闭受监视的fd以唤醒select
。另一位评论者在标准中找不到这种行为的参考,我也找不到。
有人可以提供指向此行为标准的指针吗?
答案 0 :(得分:2)
来自“The Open Group Base Specifications Issue 7”中select的描述:
当对具有O_NONBLOCK clear的输入函数的调用不会阻塞时,该函数将成功传输数据时,应认为描述符已准备好读取。 (该函数可能返回数据,文件结束指示或除了表示被阻止的错误之外的错误,并且在每种情况下,描述符都应被视为已准备好进行读取。)
所以,我想说这种方法是可移植的。