我有一个脚本(此时我没有代码示例,但是我使用了IO :: Async),它连接到远程服务器上的套接字并侦听。客户通常只是监听新数据。如何检测套接字连接何时丢失?
问题是客户端无法检测到网络问题是否发生,并且套接字连接消失。 我用IO ::异步,我也尝试过IO :: Socket。初始连接建立后,手柄始终“连接”。
如果再次建立网络连接,套接字连接自然仍然丢失,因为脚本不知道应该重新连接。
我想创建一种“keepAlive”,它每X秒(如果没有新的东西通过套接字)“ping”(syswrite)套接字来检查连接是否仍然存在。
这是做到这一点的正确方法,或者是否有另一种更具创造性或更清洁的解决方案?
我想你说的是“心跳式”程序是唯一已知的解决了这个问题。这是相当干净和创造性的,我向你保证。 ) – raina77ow