一,前言,
因为我想做的工具是上下位机通信的整体系统。当然我不准备用eth,但是eth用来做通信仿真还是比较便捷的。
二,需求
qt tcp通信+多线程,因为tcp通信会影响GUI界面显示,作用最好放入线程。
三,设计
-
QT多线程用哪种?
答:网上搜索了下,原来我之前用的QT多线程说是古老的方法,QT4.8之后建议用moveToThread了。这个用起来确实感觉便捷写,只要自己的类移入即可,否则一定要放在自己的thread的run中,不方便。
四,效果
如下是没有加入多线程,仅TCP。多线程是另外一个在后台客户端直接每隔3秒尝试连接主机的思路,当然粘包及心跳保活功能我还没加入。仅做简单tcp验证。
image.png
五,小结
之前做过些TCP通信,都是linux的API,本次是第一次使用QT的network API。但是关于接收粘包和心跳处理的设计思路是linux下tcp应用开发是一样的。我暂时没必要再做一遍了,当需要用的时候再实现也来得及,哈哈追剧去咯
作者:applecai
链接:https://www.jianshu.com/p/14d2d41938ed
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
原文始发于微信公众号(汇编语言):40. QT TCP通信--Apple的学习笔记
特别标注:
本站(CN-SEC.COM)所有文章仅供技术研究,若将其信息做其他用途,由用户承担全部法律及连带责任,本站不承担任何法律及连带责任,请遵守中华人民共和国安全法.
- 我的微信
- 微信扫一扫
-
- 我的微信公众号
- 微信扫一扫
-
评论