摘要: 心跳机制 网络中的接收和发送数据都是使用WINDOWS中的SOCKET进行实现。但是如果此套接字已经断开,那发送数据和接收数据的时候就一定会有问题。可是如何判断这个套接字是否还可以使用呢?这个就需要在系统中创建心跳机制。其实TCP中已经为我们实现了一个叫做心跳的机制。如果你设置了心跳,那TCP就会在一定的时间(比如你设置的是3秒钟)内发送你设置的次数的心跳(比如说2次),并且此信息不会影响你自己定义的协议。所谓“心跳”就是定时发送一个自定义的结构体(心跳包或心跳帧),让对方知道自己“在线”。 以确保链接的有效性。 所谓的心跳包就是客户端定时发送简单的信息给服务器端告诉它我还在而已。代码就... 阅读全文
posted @ 2012-11-08 10:00 火腿骑士 阅读(252) 评论(0) 推荐(0)
摘要: ------解决方案--------------------------------------------------------在定时器里隔段时间就发送几个字节的数据。如果3次没有返回则断开------解决方案--------------------------------------------------------客户端:30秒发送一个心跳包到服务器服务器:接收到心跳包,更新LastHeartbeatTime并且有一个线程,一分钟扫描一次,如果LastHeartbeatTime超过一分钟没更新的视为下线------解决方案------------------------------- 阅读全文
posted @ 2012-11-08 10:00 火腿骑士 阅读(348) 评论(0) 推荐(0)