日期:2014-05-17  浏览次数:21287 次

C# Socket TCP 心跳 不明白原来有资料的给发个看看?
我的服务器设置了连接超时,我做的是长连接 但是如果客户端不发送数据 服务器就会报错
错误:由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。
也就是说超时了。
在网上找的资料说需要心跳设置,不清楚心跳是什么意思?求大侠解说下,最好有代码。我的服务器和客户端通信通信没问题就是需要长连接

------解决方案--------------------
就是没有用的数据包了,当成心跳包用,

让连接知道还有数据在传输就不会断开了
------解决方案--------------------
探讨

就是没有用的数据包了,当成心跳包用,

让连接知道还有数据在传输就不会断开了

------解决方案--------------------
“错误:由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。”
这说明连接都没成功的。
连接成功后,只要没有设置接收超时时间,Socket会一直处于接收阻止状态等待下一帧数据,所以要不要心跳包无所谓