Qt之TCP通信模型

UDP应用场合:视频电话、视频会议、广播软件等对实时性要求较高的场合;

TCP应用场合:大文件传输、重要文件传输等对可靠性要求较高的场合;

 

Qt 中提供的所有的 Socket 类都是非阻塞的。

常用于socket通信套接字的类:

QTcpServer:用于 TCP/IP 通信, 作为服务器端套接字使用

QTcpSocket:用于 TCP/IP 通信, 作为客户端套接字使用。

QUdpSocket:用于 UDP 通信,服务器、客户端均使用此套接字。

注意:要使用以上的类需要在.pro文件中加上network模块,即语句 QT += network;

 

以下是基于TCP的C/S 模型,其通信流程图如下图所示:

Qt之TCP通信模型

 

其实现的工程结构如下(server端和client端同在一个工程下)

Qt之TCP通信模型    Qt之TCP通信模型    Qt之TCP通信模型

此工程实现的环境为:Window 10 以及 Qt 5.12.0

有需要的朋友可以留下联系方式获取源码,,土豪也可以异步至站内:下载