首页 > 编程语言 > 详细

QT多线程的简单使用,主线程发一份数据,子线程收两份数据

时间:2019-10-19 00:19:47      阅读:351      评论:0      收藏:0      [点我收藏+]

先看效果图,示例发送数据“Hello World”

技术分享图片

主线程:0x16f54aeda20,另两个子线程分别是0x4f1baff690、0x4f1baff6a0

因为在子线程中加了200ms、400ms延迟,所以打印是有先后顺序的

核心代码也就一丢丢。代码逻辑就是使用信号与槽使用线程之间产生联系

 1 MfBusiness::MfBusiness(QObject *parent) : QObject(parent)
 2 {
 3 connect(&se,&MfSendData::Sgl_Send,&re1,&MfRecvData1::On_Recv);
 4 connect(&se,&MfSendData::Sgl_Send,&re2,&MfRecvData2::On_Recv);
 5 re1.moveToThread(&th1);
 6 re2.moveToThread(&th2);
 7 th1.start();
 8 th2.start();
 9 }
10 void MfBusiness::DecodeData(QString str)
11 {
12 QByteArray data=str.toUtf8();
13 se.HandleData(data);
14 qDebug()<<"main";
15 qDebug()<<str;
16 qDebug()<<QThread::currentThread();
17 }

 复杂的事情,我们要简单做,滴滴滴

QT多线程的简单使用,主线程发一份数据,子线程收两份数据

原文:https://www.cnblogs.com/Kevinsh-Lee/p/11701219.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!