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