Refactor event loop handling to use GlobalVar.CURRENT_EVENT_LOOP across multiple modules, improving consistency and maintainability.

This commit is contained in:
jxxghp
2025-11-19 08:42:07 +08:00
parent 6b575f836a
commit b5a6794381
7 changed files with 22 additions and 33 deletions

View File

@@ -1,6 +1,5 @@
"""搜索订阅缺失剧集工具"""
import asyncio
import json
from typing import Optional, Type, List
@@ -8,6 +7,7 @@ from pydantic import BaseModel, Field
from app.agent.tools.base import MoviePilotTool
from app.chain.subscribe import SubscribeChain
from app.core.config import GlobalVar
from app.db.subscribe_oper import SubscribeOper
from app.log import logger
@@ -85,8 +85,7 @@ class SearchSubscribeTool(MoviePilotTool):
# 在线程池中执行同步的搜索操作
# 当 sid 有值时state 参数会被忽略,直接处理该订阅
loop = asyncio.get_event_loop()
await loop.run_in_executor(
await GlobalVar.CURRENT_EVENT_LOOP.run_in_executor(
None,
lambda: subscribe_chain.search(
sid=subscribe_id,