如何在ASyncSocket中检测远程断开连接

时间:2012-12-16 23:57:02

标签: macos cocoa sockets networking asyncsocket

我在Cocoa上使用ASyncSocket,但是当远程主机断开连接时,我没有得到onSocketDidDisconnect事件(可能每5次测试一次)。 -isConnected方法返回TRUE。
如何检测远程主机断开连接?谢谢 !

2 个答案:

答案 0 :(得分:1)

如果没有读入队列,AsyncSocket将不会报告远程对等方的断开连接。这是我在CFStream本身的一个错误(不要引用我这个)。通过阅读总是排队,我们似乎相处得很好。

答案 1 :(得分:0)

我是如何实现这一点的,所有客户都是每隔x秒或几分钟注册一次。 如果客户端断开连接,则不再进行注册,因此我认为它没有连接。