From 8b344035876fe379320888bc2d24dd8205a63895 Mon Sep 17 00:00:00 2001 From: Soulter <905617992@qq.com> Date: Tue, 11 Nov 2025 19:55:56 +0800 Subject: [PATCH] perf: non block --- src/astrbot_sdk/runtime/rpc/server/stdio.py | 2 +- src/astrbot_sdk/runtime/rpc/server/websockets.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/astrbot_sdk/runtime/rpc/server/stdio.py b/src/astrbot_sdk/runtime/rpc/server/stdio.py index 22115ba78..004fd7e48 100644 --- a/src/astrbot_sdk/runtime/rpc/server/stdio.py +++ b/src/astrbot_sdk/runtime/rpc/server/stdio.py @@ -110,7 +110,7 @@ class StdioServer(JSONRPCServer): try: # Parse JSON-RPC message message = self._parse_message(line) - await self._handle_message(message) + asyncio.create_task(self._handle_message(message)) except Exception as e: logger.error(f"Failed to parse message: {e}, raw line: {line}") diff --git a/src/astrbot_sdk/runtime/rpc/server/websockets.py b/src/astrbot_sdk/runtime/rpc/server/websockets.py index 5b9a8bf2c..7da6f3cf9 100644 --- a/src/astrbot_sdk/runtime/rpc/server/websockets.py +++ b/src/astrbot_sdk/runtime/rpc/server/websockets.py @@ -125,7 +125,7 @@ class WebSocketServer(JSONRPCServer): if msg.type == aiohttp.WSMsgType.TEXT: try: message = self._parse_message(msg.data) - await self._handle_message(message) + asyncio.create_task(self._handle_message(message)) except Exception as e: logger.error(f"Failed to parse message: {e}, raw data: {msg.data}") @@ -133,7 +133,7 @@ class WebSocketServer(JSONRPCServer): try: text = msg.data.decode("utf-8") message = self._parse_message(text) - await self._handle_message(message) + asyncio.create_task(self._handle_message(message)) except Exception as e: logger.error(f"Failed to parse binary message: {e}")