我使用 nopoll ( http://www.aspl.es/nopoll/ ) 让我的 C 应用程序与 Meteor 进行通信。
Meteor 会定期发送一些ping
消息。当我的应用程序轮询 websocket 时,它会回复pong
消息:一切都已找到。
接下来,为了避免轮询,我将其替换为初始化为sigaction(SIGIO, ...)
.
然后,当ping
收到时,我发送pong
,但有时,服务器停止发送ping
并且无法交换其他消息。
ping
和相关pong
消息之间是否有任何超时。是否有任何机制可以向自己宣传连接丢失,原因nopoll_conn_is_ok()
和nopoll_conn_is ready()
总是nopoll_true
。