← All bookmarks

Bookmark ·

Sample required in docs for periodic timers · Issue #915 · encode/starlette · GitHub

from apscheduler.triggers.cron import CronTrigger
from starlette.applications import Starlette
from apscheduler.schedulers.asyncio import AsyncIOScheduler


async def cron_job():
print('task is running')


async def startup_event():
scheduler = AsyncIOScheduler()
# run every minute
scheduler.add_job(cron_job, CronTrigger.from_crontab('* * * * *'))
scheduler.start()

app = Starlette(
on_startup=[startup_event],
)