Update heartFC_chat.py

This commit is contained in:
SengokuCola
2025-08-08 00:02:35 +08:00
parent ade7ed4f5a
commit fdea38f2a8

View File

@@ -606,21 +606,24 @@ class HeartFChatting:
async def _main_chat_loop(self): async def _main_chat_loop(self):
"""主循环,持续进行计划并可能回复消息,直到被外部取消。""" """主循环,持续进行计划并可能回复消息,直到被外部取消。"""
try: try:
while self.running: # 主循环 while self.running:
success = await self._loopbody() try:
await asyncio.sleep(0.1) # 主循环
if not success: success = await self._loopbody()
break await asyncio.sleep(0.1)
if not success:
logger.info(f"{self.log_prefix} 麦麦已强制离开聊天") break
except Exception:
logger.error(f"{self.log_prefix} 麦麦聊天循环意外错误")
print(traceback.format_exc())
# 理论上不能到这里
except asyncio.CancelledError: except asyncio.CancelledError:
# 设置了关闭标志位后被取消是正常流程 # 设置了关闭标志位后被取消是正常流程
logger.info(f"{self.log_prefix} 麦麦已关闭聊天") logger.info(f"{self.log_prefix} 麦麦已关闭聊天")
except Exception: except Exception:
logger.error(f"{self.log_prefix} 麦麦聊天意外错误") logger.error(f"{self.log_prefix} 麦麦聊天意外错误")
print(traceback.format_exc()) print(traceback.format_exc())
# 理论上不能到这里 logger.error(f"{self.log_prefix} 结束了聊天循环")
logger.error(f"{self.log_prefix} 麦麦聊天意外错误,结束了聊天循环")
async def _handle_action( async def _handle_action(
self, self,