QT多线程信号槽探讨:QT发出信号是在哪个线程?

一直没想明白,也想不出验证方式,来请教大神。
以QT自带的一些类为例,例如TCP类 QTcpSocket,串口类QSerialPort等,
他们都内置了一些信号,例如,已收到了数据信号:readyRead(QByteArray),

QTcpSocket *tcp = new ...//*
QThread *thread=new.....//*
tcp->moveToThread(thread)//把tcp实例移动到子线程
connect(tcp, &QTcpSocket::readRead,this,&MainWin::handleData)

众所周知,此时tcp实例的槽函数肯定会在子线程被执行,但是问题来了:
tcp的实例发出readyRead信号,是在哪个线程发出的?
子线程还是主线程?如何验证?

查看全部
qq_31073871
暴躁的野生猿
2020/06/22 09:36
  • c++
  • 开发语言
  • 点赞
  • 收藏
  • 回答
    私信
满意答案
查看全部

1个回复