• 10459阅读
  • 2回复

[提问]Qt 如何检测网络连接状态 [复制链接]

上一主题 下一主题
离线passion_wu
 
只看楼主 倒序阅读 楼主  发表于: 2012-07-06
关键词: 检测网络状态
各位好:
        我的程序(客户端)需要实时检测与服务器的连接状态,当连接断开时立即给出提示,断开后需要定时检测能否连接到服务器,当连接可用时也立即给出提示。我试过用QTcpSocket 的disconnected信号,但是响应太慢,拔掉网线后20秒才给出断网提示。发送心跳针也不好,服务器需要不断的响应这些心跳针请求。Qt中有没有智能检测网络状态的类或函数啊。
离线robertkun

只看该作者 1楼 发表于: 2012-08-28

看边别人实现的一种判断方法。是自已加一个记时器。。不停扫瞄。。不知道是不是你说的发送心跳指针?
  1. void slot_timeOut()
  2. {
  3. QList<QHostAddress> allAddress = QNetworkInterface::allAddresses();
  4. QString strIp = allAddress.first().toString();
  5. if(strIp == "127.0.0.1")
  6. {
  7. // 连接已断开
  8. mTimer.stop();
  9. }
  10. }

                                              简单的生活使人快乐!
离线silence.sx
只看该作者 2楼 发表于: 2012-08-28
楼主头像给力
快速回复
限100 字节
 
上一个 下一个