INNER CODE UNIT · Python
launch_blocking
GraiaProject/Ariadne · src/graia/ariadne/app.py:302
def launch_blocking(cls, stop_signals: Iterable[signal.Signals] = (signal.SIGINT,)):
"""以阻塞方式启动 Ariadne
Args:
stop_signals (Iterable[signal.Signals], optional): 要监听的停止信号,默认为 `(signal.SIGINT,)`
"""
if not cls.instances:
raise ValueError("No account specified.")
cls._patch_launch_manager()
try:
cls.launch_manager.launch_blocking(stop_signal=stop_signals)
except asyncio.CancelledError:
logger.info("Launch manager exited.", style="red")
@classmethod
def stop(cls):
"""计划停止 Ariadne"""
mgr = cls.launch_manager