问题描述
环境
Ubuntu 20.04 Python 3.8.5 APScheduler 3.8.x/3.9.x uvicorn 0.15.0 - 0.17.6
- 在上述环境下,
APScheduler
的定时任务不能运行 uvicorn 0.14.0
与APScheduler
搭配无此问题- 在
Windows
下uvicorn
与APScheduler
任意版本搭配也无此问题
解决办法
在
app
的startup
事件中启动定时器即可@app.on_event("startup") async def start_scheduler(): AsyncSched = AsyncIOScheduler(timezone="Asia/Shanghai") scheduler.add_job(...) scheduler.start()
- 参考 uvicorn can't reload when i use apscheduler and fastapi together
2023年3月
,fastapi 0.93.0 提出用asynccontextmanager lifespan
替代startup shutdown
本文出自 qbit snap
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。