fix: correctly shutdown QTimers
This commit is contained in:
		| @@ -25,8 +25,7 @@ class RecorderClient(QObject): | ||||
|         self.port: int = port | ||||
|         self.socket: socket.socket = socket.socket( | ||||
|             socket.AF_INET, socket.SOCK_STREAM) | ||||
|         self.timer: QTimer = QTimer(self) | ||||
|         self.timer.timeout.connect(self.poll_socket) | ||||
|         self.timer: Optional[QTimer] = None | ||||
|         self.connected: bool = False | ||||
|  | ||||
|     @pyqtSlot() | ||||
| @@ -34,6 +33,8 @@ class RecorderClient(QObject): | ||||
|         self.socket.connect((self.host, self.port)) | ||||
|         self.socket.setblocking(False) | ||||
|         self.connected = True | ||||
|         self.timer = QTimer(self) | ||||
|         self.timer.timeout.connect(self.poll_socket) | ||||
|         self.timer.start(50) | ||||
|         print("Connected to server") | ||||
|  | ||||
| @@ -84,7 +85,9 @@ class RecorderClient(QObject): | ||||
|     @pyqtSlot() | ||||
|     def shutdown(self): | ||||
|         print("Shutting down client") | ||||
|         self.timer.stop() | ||||
|         if self.timer is not None: | ||||
|             self.timer.stop() | ||||
|             self.timer = None | ||||
|         self.connected = False | ||||
|         self.socket.close() | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user