本文主要是介绍Socket 服务端断网时,客户端依旧显示连接状态?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Socket 服务端断网时,客户端依旧显示连接状态?
使用socket进行测试:
- 客户端断网时,客户端接到断开回调
- 服务端手动关闭时,客户端接到断网回调
- 服务端运行突然断网时,客户端接收不到断网的回调(分很多场景,参考:
https://www.cnblogs.com/549294286/p/5077175.html)
为什么在服务端断网时接不到回调呢?
这是因为TCP建立的通道被破坏,造成了所谓的死链接。
这个时候是就需要心跳机制,来互相确认是否在线。
另外一个问题,Socket发送消息时靠什么来判断对方有没有接收到?
最正确的做法是:在接收到消息时,告诉对方这条消息接收成功。
为什么有些Socket框架提供了发送结果的回调?
这个回调结果只是代表 我发出去了,至于我发出去之后的路上遇到了什么,就不得而知了,所以只能有参考作用。
这篇关于Socket 服务端断网时,客户端依旧显示连接状态?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!