From 254bfe7cbba4b9dd2d06f57bf227052bcd6486da Mon Sep 17 00:00:00 2001 From: kimgunsoo Date: Wed, 26 Nov 2025 11:12:44 +0900 Subject: [PATCH] Fix: prevent keepalive task leak on reconnection in KeepAliveWebSocket --- binance/ws/keepalive_websocket.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/binance/ws/keepalive_websocket.py b/binance/ws/keepalive_websocket.py index 2e5d9d8f..ef6591a4 100644 --- a/binance/ws/keepalive_websocket.py +++ b/binance/ws/keepalive_websocket.py @@ -62,7 +62,8 @@ async def _before_connect(self): self._build_path() async def _after_connect(self): - self._start_socket_timer() + if self._timer is None: + self._start_socket_timer() def _start_socket_timer(self): self._timer = self._loop.call_later( @@ -141,4 +142,7 @@ async def _keepalive_socket(self): except Exception as e: self._log.error(f"error in keepalive_socket: {e}") finally: - self._start_socket_timer() + if self._timer is not None: + self._start_socket_timer() + else: + self._log.info('skip timer restart - web socket is exit')