关于QT客户端和服务器端之前状态监控

见图:

从图表可以理解:

服务端,如果关闭监控,那么客户端立刻就不能获取网络的状态,因为链接没有改变;

通常情况下,我们希望客户端可以实时监控到服务器当前网络状态,确保自动重连或者监控网络的状态变化;

因此服务器端需要优雅关闭网络连接之后,然后等待一些时间延时,确保客户端都能够有足够的时间处理问题。

例如:

客户端需要接受三个消息:

这样客户端才能够监控到服务器端网络的状态变化,然后及时捕获,进入正常的业务流程。

我处理的思路:

1、客户端创建一个网络连接定时器,连接成功定时器关闭;

2、当出现网络异常(服务器不能立刻关闭监听,先关闭链接,等待一些时间)触发消息,进入消息槽,异常消息顺序:Error ,StateChange,OnDisconnect;

3、在OnDisconnect槽内,激活网络连接定时器,进入定时尝试连接的状态;

相关推荐
何中应5 分钟前
Grafana如何给列表设置别名
运维·grafana·监控
MXsoft61834 分钟前
运维的尽头,是把“救火”变成“算命”
运维
大卡片35 分钟前
IO模型与并发服务器设计
运维·服务器·网络
莎士比亚的文学花园1 小时前
Linux驱动开发(1)——系统移植
linux·运维·服务器
PH = 71 小时前
OverlayFS联合文件系统使用示例
java·linux·服务器
志栋智能2 小时前
超自动化巡检:解锁运维数据的深层价值
运维·服务器·数据库·自动化
坚持就完事了2 小时前
Linux中的mv命令
linux·运维·服务器
SongYuLong的博客2 小时前
Claude Code安装配置(Linux)
linux·运维·服务器
linux修理工3 小时前
禁用 Windows 跳转列表和最近文档跟踪的注册表修改
运维
AC赳赳老秦3 小时前
OpenClaw权限管理实操:团队共享Agent,设置操作权限,保障数据安全
服务器·开发语言·前端·javascript·excel·deepseek·openclaw