我有一个UDP套接字在一个端口监听广播传输,一切正常。然而,当我将操作系统(Windows 7)休眠并恢复时,套接字就停止接收数据了(使用Wireshark可以看到有数据到达)。如果更改任何网络设置,如更改IP地址、禁用和启用网络适配器等,也会发生这种情况。操作系统似乎在休眠时禁用所有网络适配器,在恢复时重新启用它们。select函数返回0(超时),与没有接收到任何数据时没有区别。我在任何地方都找不到有关此行为的参考。如果我关闭套接字并重新创建它,则它会再次开始工作。在操作系统恢复后,我的TCP监听套接字仍然可以正常工作。有什么想法可以检测和纠正这种情况吗?编辑:它仍然可以直接接收地址数据,只是不能再接收广播传输。编辑2:刚刚发现,如果我向套接字写入数据(发送虚拟数据包到任何地方),它就会再次开始工作...