Qt 对象关系与多线程

warning: cannot create children for a parent that is in a different thread.!!!!


 

子对象和父对象属于不同的线程!

例如: QTimer * timer = new QTimer(this);

new一个定时器timer,此时timer是 this所指向对象 的子对象,

构造函数构造this时,若所处的当前线程为0x00000001;

而在执行上述语句时, 所处的当前进程如果不是0x00000001,则或出现上述警告!

 

对象实例化时,new后面的括号中的内容会指定对象之间的关系

 

所以,需要做的是 解除对象之间的父子关系(setParent(NULL))

     或者放于统一线程。

或许还有更好的方法,欢迎解答

 

posted @ 2017-09-20 17:06  apache11  阅读(298)  评论(0编辑  收藏  举报