perf: 退出时关闭 aiohttp client session

This commit is contained in:
Soulter
2025-01-08 12:43:34 +08:00
parent 419f77e245
commit 1b7e4fbbdc
3 changed files with 11 additions and 1 deletions
+2
View File
@@ -92,6 +92,8 @@ class AstrBotCoreLifecycle:
self.event_queue.closed = True
for task in self.curr_tasks:
task.cancel()
await self.provider_manager.terminate()
for task in self.curr_tasks:
try:
+6 -1
View File
@@ -65,4 +65,9 @@ class ProviderManager():
logger.warning("未启用任何大模型提供商适配器。")
def get_insts(self):
return self.provider_insts
return self.provider_insts
async def terminate(self):
for provider_inst in self.provider_insts:
if hasattr(provider_inst, "terminate"):
await provider_inst.terminate()
@@ -127,3 +127,6 @@ class ProviderDify(Provider):
async def get_human_readable_context(self, session_id, page, page_size):
raise Exception("暂不支持获得 Dify 的历史消息记录。")
async def terminate(self):
await self.api_client.close()