Python定时任务工具之APScheduler使用方式.pdfVIP

Python定时任务工具之APScheduler使用方式.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

Python定定时时任任务务⼯⼯具具之之APScheduler使使⽤⽤⽅⽅式式

APScheduler(advancededpythonscheduler)是⼀款Python开发的定时任务⼯具。

⽂档地址

特点:

不依赖于Linux统的crontab统定时,独⽴运⾏

可以动态添加新的定时任务,如下单后30分钟内必须⽀付,否则取消订单,就可以借助此⼯具(每下⼀单就要添加此

订单的定时任务)

对添加的定时任务可以做持久保存

1安装

pipinstallapscheduler

2组成

APScheduler由以下四部分组成:

triggers触发器指定定时任务执⾏的时机

jobstores存储器可以将定时持久存储

executors执⾏器在定时任务该执⾏时,以进程或线程⽅式执⾏任务

schedulers调度器常⽤的有BackgroundScheduler(后台运⾏)和BlockingScheduler阻塞式)

3使⽤⽅式

fromapscheduler.schedulers.backgroundimportBlockingScheduler

#

创建定时任务的调度器对象

scheduler=BlockingScheduler)

#创建执⾏器

executors={

default:ThreadPoolExecutor20),

}

#定义定时任务

defmy_jobparam1,param2):#参数通过add_job)args传递传递过来

printparam1)#100

printparam2)#python

#向调度器中添加定时任务

scheduler.add_jobmy_job,date,args=[100,python],executors=executors)

#启动定时任务调度器⼯作

scheduler.start)

4调度器Scheduler

负责管理定时任务

BlockingScheduler:作为独⽴进程时使⽤

fromapscheduler.schedulers.blockingimportBlockingScheduler

scheduler=BlockingScheduler)

scheduler.start)#此处程序会发⽣阻塞

BackgroundScheduler:在框架程序(如Django、Flask)中使⽤.

fromapscheduler.schedulers.backgroundimportBackgroundScheduler

scheduler=BackgroundScheduler)

scheduler.start)#此处程序不会发⽣阻塞

AsyncIOScheduler:当你的程序使⽤了asyncio的时候使⽤。

GeventScheduler:当你的程序使⽤了gevent的时候使⽤。

TornadoScheduler:当你的程序基于Tornado的时候使⽤。

TwistedScheduler:当你的程序使⽤了Twisted的时候使⽤

QtScheduler:如果你的应⽤是⼀个Qt应⽤的时候可以使⽤。

4执⾏器executors

在定时任务该执⾏时,以进程或线程⽅式执⾏任务

ThreadPoolExecutor

fromapscheduler.executors.poolimportThreadPoolExecutor

ThreadPoolExecutormax_workers)

使⽤⽅法

fromapscheduler.executors.poolimportThreadPoolExecutor

executors={

default:ThreadPoolExecutor20)#最多20个线程同时执⾏

}

scheduler=BackgroundSchedulerexecutors=executors)

ProcessPoolExecutor

fromapscheduler.executors.poolimportProc

文档评论(0)

8d758 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档