方法 1
class CaseRunThread(QThread):
test_result_signal = pyqtSignal(dict)
def __init__(self):
super().__init__(None)
self.run_case = None
def send_test_result(self):
print('xxxxxxxxxxxxxx')
def run(self):
self.run_case = Test_Case(False)
timer = QTimer()
timer.timeout.connect(self.send_test_result)
timer.start(1000)
QThread().exec()
self.run_case.run()
方法2
class CaseRunThread(QThread):
test_result_signal = pyqtSignal(dict)
def __init__(self):
super().__init__(None)
self.run_case = None
def send_test_result(self):
print('xxxxxxxxxxxxxx')
def run(self):
self.run_case = Test_Case(False)
timer = QTimer()
timer.timeout.connect(self.send_test_result)
timer.start(1000)
# 开启一个线程执行 timer
timer_thread = QThread()
timer.moveToThread(timer_thread)
timer_thread.start()
self.run_case.run()
注
最好不要再 QThread 线程中再建立新的 QThread 子线程,最好使用 python 的线程替代。