linux多线程 心跳机制怎么实现呢?
TCP服务,长连接。
首先一个s(服务器)和一个c(客户端)建立TCP连接,S向C发送数据。C有两个线程:一个收数据;一个将数据保存到本地,保存成功以后向S回复一个确认。
因为是长连接,所以要加一个心跳检测,C每隔100秒向S发一个心跳数据包,S收到包以后会给C一个回复。如果C没有在10秒内收到回复,则再次向S发心跳包,如果仍然没有在10秒内收到回复,则认为连接已经断了,则需要重新connect服务器。
基本功能实现了,现在缺少心跳检测功能。心跳怎么实现呢?听起来简单,实现起来发现不容易,各位大牛指点一下啊