修复: 更新消息分发管理器以提高性能和稳定性

This commit is contained in:
Windpicker-owo
2025-11-07 21:16:58 +08:00
parent 26d22e5dd8
commit d751945a0e

View File

@@ -32,13 +32,10 @@ class SchedulerDispatcher:
def __init__(self):
# 追踪每个流的 schedule_id
self.stream_schedules: dict[str, str] = {} # stream_id -> schedule_id
# 用于保护 schedule 创建/删除的锁,避免竞态条件
self.schedule_locks: dict[str, asyncio.Lock] = {} # stream_id -> Lock
# Chatter 管理器
self.chatter_manager: ChatterManager | None = None
# 统计信息
self.stats = {
"total_schedules_created": 0,
@@ -85,12 +82,6 @@ class SchedulerDispatcher:
self.chatter_manager = chatter_manager
logger.debug(f"设置 Chatter 管理器: {chatter_manager.__class__.__name__}")
def _get_schedule_lock(self, stream_id: str) -> asyncio.Lock:
"""获取流的 schedule 锁"""
if stream_id not in self.schedule_locks:
self.schedule_locks[stream_id] = asyncio.Lock()
return self.schedule_locks[stream_id]
async def on_message_received(self, stream_id: str) -> None:
"""消息接收时的处理逻辑