Luasocket select函数应该告诉何时可以无阻塞地读取套接字。它显然也可以用来判断服务器套接字何时准备好接受新连接,但是文档给出了以下警告:
Another important note: calling select with a server socket in the receive parameter before a call to accept does not guarantee accept will return immediately. Use the settimeout method or accept might block forever.
在什么情况下 accept 可以阻止即使 select 告诉它可以安全读取?出于测试目的,有没有办法强制出现此问题?
最佳答案
我不知道他们从哪里得到这个想法。从事网络编程20多年从未见过。
如果您有多个 select() 线程,当然会发生这种情况,但如果这是预期的,我希望文档会这么说。
关于sockets - 在 Luasocket 中,即使在 select 告诉它可以安全读取之后,在什么情况下 accept 调用也会阻塞?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16001896/