QThread: Destroyed while thread is still running

PyQt5执行耗时操作的时候,选择QThread的方法进行处理,继承QThread类。
使用如下代码:

        select_t = SelectModuleThread()  # 通过创建一个继承QThread的类的线程对象
        select_t.my_signal.connect(self.set_module_num)   # 线程对象绑定信号
        select_t.start()  # 线程启动

然后报错(windows下):QThread: Destroyed while thread is still running,程序直接崩溃
解决办法:在select_t.start()后面跟一句select_t.exec()保护一下

        select_t = SelectModuleThread()  # 通过创建一个继承QThread的类的线程对象
        select_t.my_signal.connect(self.set_num)   # 线程对象绑定信号
        select_t.start()  # 线程启动
        select_t.exec()

你可能感兴趣的:(PyQt5学习)