• 6041阅读
  • 2回复

Qtcpsocket的一个问题 [复制链接]

上一主题 下一主题
离线sydnash
 

只看楼主 倒序阅读 楼主  发表于: 2010-11-09
— 本帖被 XChinux 从 General Qt Programming 移动到本区(2011-01-02) —
    在Qtcpsocket中,有disconnected信号,如果客户端的socket被删除,服务端也能发射该信号,通知服务端链接已经断开。
     但是,我今天发现在链接建立好后,如果我断开物理网络,却没有触发该信号,请问我要怎么检查这样的网络断开呢?
[ 此帖被sydnash在2010-11-09 09:48重新编辑 ]
离线sydnash

只看该作者 1楼 发表于: 2010-11-09
msgSock->setSocketOption(QAbstractSocket::KeepAliveOption, QVariant(true));

   这句话有什么用,还有网上说这个可以检测异常断开网络的情况,但是我设置了也没有用 是不是延迟时间太长,怎么修改延迟呢
离线knightlee
只看该作者 2楼 发表于: 2010-11-10
非正常断开,即便是OS也不能马上知道,只能等超时了。
快速回复
限100 字节
 
上一个 下一个