创建了一个 Qthread 来处理我的应用程序的版本检查。线程工作完美,只是它发出了两次完成信号。
class myThread(QtCore.QThread):
def run(self):
print("Im running.")
self.finished.emit()
def stop(self):
self.terminate()
class myApp(QtWidgets.QMainWindow, Ui_App):
def __init__(self, parent=None):
super(myApp, self).__init__()
self.myThread = myThread()
self.myThread.start()
self.myThread.finished.connect(self.allDone)
def allDone(self):
print('Thread is done')
如何防止信号发射两次?
最佳答案
您的类myThread
继承自QtCore.QThread
,它已经具有finished
信号,所以我假设问题是您的(多余的)行self.finished.emit()
.
这些看起来可能有帮助:
关于这样:
文档:
PySide Qt 绑定(bind)文档:
关于python - QThread 信号发射两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52457559/