1.基本概念
不管你使用哪种APScheduler的定时任务,你都需要先了解APScheduler的简单机制。即:job、executors、jobstores、trigger、scheduler等
1.job
即需要被执行的具体任务,主要对应Python中的函数或方法。在APScheduler中即可以装饰器的方式添加,也可以动态添加job。
2.executors
即执行job的对象。通常可以是多线程、多进程、协程等对象。
3. jobstores
即存储job元数据的地方。可以是memory、sqllite、mysql等。
4.trigger
即决定任务的触发模式
4.1date :固定日期触发器:任务只运行一次,运行完毕自动清除;若错过指定运行时间,任务不会被创建
4.2interval: 时间间隔触发器
4.3cron : 指定日期时间周期性触发 (详细说明往下看)
5.scheduler
用于调度和管理上述提到的所有对象。
5.1BlockingScheduler 阻塞定时任务执行器
5.2BackgroundScheduler 后台定时任务执行器
2.以装饰器方式添加时阻塞方式的时间间隔任务
from apscheduler.schedulers.blocking import BlockingScheduler
sched = BlockingScheduler()
@sched.scheduled_job('interval', seconds=5)
def my_job():
pass
sched.start()
3.动态添加指定日期的后台任务
from