首页 > 编程语言 > 详细

Qt5线程错误:QThread: Destroyed while thread is still running(执行runThread->exit(0))

时间:2019-03-26 00:32:27      阅读:625      评论:0      收藏:0      [点我收藏+]

背景:

        当前类,编写接收子线程类信号的槽函数和触发子线程类执行的信号;

        新建一个子线程类,编写槽函数和信号,MyClass *m_MyClass=new MyClass();

        新建一个线程对象QThread *runThread=new QThread();

        使用connect连接当前类与子线程的信号槽,以便触发线程及接收线程执行结果;

        使用m_MyClass.moveToThread(runThread),将子线程类移到线程中执行;

        runThread->start(),开启线程。

 

**在当前线程的析构函数中,如果先删除runThread再删除m_MyClass,则会出现错误QThread: Destroyed while thread is still running

**正确的写法应该是:

   runThread->exit(0);

   delete m_MyClass;

   delete runThread;
---------------------
作者:爱因
来源:CSDN
原文:https://blog.csdn.net/xbnlkdbxl/article/details/76828071
版权声明:本文为博主原创文章,转载请附上博文链接!

Qt5线程错误:QThread: Destroyed while thread is still running(执行runThread->exit(0))

原文:https://www.cnblogs.com/findumars/p/10597592.html

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