def server_run(): def on_tick_sync(): if not ready.is_set(): loops.append(asyncio.get_event_loop()) ready.set() async def on_tick(): on_tick_sync() config = Config(app, host="127.0.0.1", port=port, loop="asyncio") config.callback_notify = on_tick config.log_config = {"version": 1} config.disable_lifespan = True config.logger = logging.getLogger("uvicorn") server = Server(config=config) server.install_signal_handlers = lambda *args, **kwargs: None try: server.started.set = on_tick_sync except Exception: pass server.run()