社区
Qt
帖子详情
QT客户端发何是否可以单方发心跳数据通过write的返回值判断连接已断开
iperf
2016-10-18 09:36:24
有个问题请教 大家:
我的程序只是客户端,现在想通过定时器5秒调用write函数 发一次数据到服务端,
根据write的返回值判断 连接 是不是断开,这办法我试了,不行呢?当我把网线断开后,write的返回值 竟然还是所
发送数据的大小。根本没用, 是不是 QT socket发送用的 缓冲的原因?并没有直接发出去?
有什么别的办法吗?
...全文
422
3
打赏
收藏
QT客户端发何是否可以单方发心跳数据通过write的返回值判断连接已断开
有个问题请教 大家: 我的程序只是客户端,现在想通过定时器5秒调用write函数 发一次数据到服务端, 根据write的返回值判断 连接 是不是断开,这办法我试了,不行呢?当我把网线断开后,write的返回值 竟然还是所 发送数据的大小。根本没用, 是不是 QT socket发送用的 缓冲的原因?并没有直接发出去? 有什么别的办法吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Little柯南
2016-10-18
打赏
举报
回复
write是调用继承QIODevice的write()函数,里面参数第一个是指针,第二个是size字节 qint64 QIODevice::write(const char * data, qint64 maxSize) 或者const char*的参数
Little柯南
2016-10-18
打赏
举报
回复
Qt有个函数是:bool QAbstractSocket::waitForBytesWritten(int msecs = 30000) [virtual],这个函数的返回值可以查看是否将数据发送出去了。一旦确定发出去了,即使你断掉socket也没关系,数据已经写在网络缓存里面了,仅仅需要另一端接收即可
jiqiang01234
2016-10-18
打赏
举报
回复
不可以。必须要对方返回才能判断是否断线。即使是tcp也不保证断线后能单方向报错。一个数据包经过若干个网络节点,任何一个节点出问题都可能导致网络中断,tcp是无法获知的。
QT
编写的TCP调试工具
ASCII格式和16进制
数据
收
发
,支持多个
客户端
收
发
消息,可以指定
客户端
发
送消息,动态增加和移除已
连接
客户端
。
TCP调试工具
TCP调试工具,ASCII格式和16进制
数据
收
发
,支持多个
客户端
收
发
消息,可以指定
客户端
发
送消息,动态增加和移除已
连接
客户端
。
Qt
高级系列之8:
Qt
多线程线程池
数据
同步机制及文件下载器项目实战
1.带领您深入学习
QT
5/C++:
Qt
多线程线程池及
数据
同步机制 ,多线程文件下载器项目实战,继承自
QT
hread,继承自QObject,QRunnable和
QT
hreadPool,
Qt
Concurrent,
Qt
多线程技术与
数据
加锁保护机制:QMutex,QSemaphore...
QT
TCP服务端
判断
客户端
断开
连接
一、服务器
判断
客户端
有没有
断开
连接
,主要是看有没有
连接
的
客户端
有没有返回错误 二、监听代码,主要实现监听任务连到本机,端口号为10086的
客户端
,并建
连接
信号与槽函数关系 void MainWindow::start_monitor() { connect(&m_tcpServer,SIGNAL(newConnection()),this,SLOT(acceptConnection())); if(!m_tcpServer.listen(QHostAddress::Any,10086
qt
客户端
连接
服务器不响应,
qt
判断
tcp
客户端
是否
连接
服务器
qt
判断
tcp
客户端
是否
连接
服务器 内容精选换一换GaussDB(DWS) 支持SSL认证方式的
连接
,以加密GaussDB(DWS)
客户端
与
数据
库之间传输的
数据
。SSL
连接
方式的安全性高于普通模式,集群默认开启SSL功能允许来自
客户端
的SSL
连接
或非SSL
连接
,从安全性考虑,建议用户在
客户端
使用SSL
连接
方式。如果要强制使用SSL
连接
,需要为集群开启服务器端
是否
强制使用SSL
连接
。在集华为云帮助...
Qt
16,203
社区成员
26,591
社区内容
发帖
与我相关
我的任务
Qt
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
复制链接
扫一扫
分享
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章