기본 창과 PyQt 스레드 간 데이터 통신
PyQt 애플리케이션에서 일반적인 시나리오는 기본 창과 스레드 간에 데이터를 공유하는 것입니다. 스레드 안전성을 유지하면서 스레드. 권장되는 접근 방식은 다음과 같습니다.
신호 및 슬롯:
예:
<code class="python">class Worker(QtCore.QThread): beep = QtCore.pyqtSignal(int) def __init__(self, sleep_time): super(Worker, self).__init__() self.sleep_time = sleep_time def run(self): i = 0 while True: i += 1 self.beep.emit(i) time.sleep(self.sleep_time) class MainWindow(QtGui.QWidget): def __init__(self): # ... self.worker = Worker(1) # Initial sleep time self.worker.beep.connect(self.update) self.worker.start() def update(self, number): # Update widget with number self.output.display(number)</code>
주의 사항:
기타 접근 방식:
위 내용은 PyQt의 기본 창과 스레드 간에 데이터를 안전하게 통신하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!