UDP通信适用于可靠性不那么重要的场合,例如广播消息;为实现既可发送也可接收消息,需要定义两个端口。
1、发送端流程
- 初始化一个QUdpSocket对象:udpSender = new QUdpSocket();
- 配置发送端口:int sendPort = 1234;
- 配置接收端口:int recvPort = 4321;
- 绑定接收端口:udpSender->bind(recvPort);
- 绑定readyRead信号和对应的槽函数用来接收数据,在槽函数中使用readDatagram()读取数据
- 发送数据:udpSender->wrtiteDatagram();
2、接收端流程
- 初始化对象:udpRecv = new QUdpSocket();
- 配置发送端口:int sendPort = 4321; //与发送端的接收端口保持一致;
- 配置接收端口:int recvPort = 1234; //与发送端的发送端口保持一致;
- 绑定接收端口:udpRecv>bind(recvPort);
- 绑定readyRead信号和对应的槽函数用来接收数据,在槽函数中使用readDatagram()读取数据
- 发送数据:udpSender->wrtiteDatagram();