需求

qt 多线程编程时,经常碰到 QObject: Cannot create children for a parent that is in a different thread .

解决

正常就两种方法解决:

  • 把这个 QObject 放到子线程中的 run 里面去创建和执行。
  • 使用 moveToThread 把这个 QObject 转移给子线程。

参考

简单例子理解 Qt 中 QObject: Cannot create children for a parent that is in a different thread. 问题

【Qt】Qt出现QObject: Cannot create children for a parent that is in a different thread.问题

(Parent is QSerialPort(0x4ab1ab0), parent‘s thread is QThread(0xbe3860)……问题解决办法

Qt Socket多线程编程出现的问题