我们在客户端进程-server进程之间有一个unix域流套接字连接。当服务器终止时,它将关闭其连接的套接字及其侦听套接字。
有时,在客户端,Socket仍然处于CONNECTED状态(使用netstat -anp | grep。此外,在客户端,当调用recv()时,它返回EAGAIN errno。此行为仅被观察到SOMETIMES。但是,无法理解这是怎么可能的。
如果有人可以解释它是如何可能的话,那将会非常有帮助。
答案 0 :(得分:0)
您是否明确关闭了连接?
如果服务器代码在没有关闭所有连接的情况下突然终止,操作系统仍会将此连接视为活动状态,因为服务器没有时间清理。执行此操作的方法取决于使用的语言。