apscheduler在tornado的应用TornadoScheduler


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
    


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2026 CODEPRJ.COM