|
@@ -486,9 +486,13 @@ class SmartShooter(metaclass=SingletonType):
|
|
|
sub_socket, context = self.__create_listen()
|
|
sub_socket, context = self.__create_listen()
|
|
|
print("构建监听", self.connect_status)
|
|
print("构建监听", self.connect_status)
|
|
|
logger.info("构建监听,%s", self.connect_status)
|
|
logger.info("构建监听,%s", self.connect_status)
|
|
|
- # 创建并保存事件循环引用
|
|
|
|
|
- self.listen_loop = asyncio.new_event_loop()
|
|
|
|
|
- asyncio.set_event_loop(self.listen_loop)
|
|
|
|
|
|
|
+ try:
|
|
|
|
|
+ # 尝试获取当前线程的事件循环
|
|
|
|
|
+ self.listen_loop = asyncio.get_event_loop()
|
|
|
|
|
+ except RuntimeError:
|
|
|
|
|
+ # 如果当前线程没有事件循环,则创建一个新的
|
|
|
|
|
+ self.listen_loop = asyncio.new_event_loop()
|
|
|
|
|
+ asyncio.set_event_loop(self.listen_loop)
|
|
|
while True:
|
|
while True:
|
|
|
self.listen_init = True
|
|
self.listen_init = True
|
|
|
if self.callback_listen == None:
|
|
if self.callback_listen == None:
|