apscheduler BackgroundScheduler

后台运行定时任务,不阻塞主线程

from apscheduler.schedulers.background import BackgroundScheduler

def job():
      print("test")

scheduler = BackgroundScheduler()
scheduler.add_job(job, 'cron', hour=23)
scheduler.start()

while True:
    print("main thread!!")

tornado 启动定时任务

from apscheduler.schedulers.tornado import TornadoScheduler

scheduler = TornadoScheduler()
scheduler.add_job(job, "interval", minutes=5)
'''
add_job triggers类型
1. date 特定时间执行,只执行一次
2. interval 固定间隔时间触发
      weeks (int)	隔几周
      days (int)	隔几天
      hours (int)	隔几小时
      minutes (int)	隔几分钟
      seconds (int)	隔多少秒
      start_date (datetime 或 str)	指定开始日期
      end_date (datetime 或 str)	指定结束日期
3. cron 特定时间周期性地触发
exp: add_job(job, "cron", hour=0, minute=0) 每天凌晨执行
'''
scheduler.start()
  • 在启动服务时将调度器绑定到app的调度器上
    app = tornado.web.Application(URLS, **SETTINGS)
    app.scheduler = scheduler
    

相关文章:

  • 2021-11-13
  • 2021-11-20
  • 2021-06-09
  • 2022-12-23
  • 2022-12-23
  • 2021-07-20
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-09-21
  • 2022-12-23
  • 2021-09-08
  • 2021-04-07
相关资源
相似解决方案