Python APScheduler执行使用方法详解


Posted in Python onDecember 10, 2020

APScheduler就是定时进行周期性的运行某些程序,在语言程序编写中,一直会遇到些定时服务,有时是根据时间定时,有时在固定的位置上进行定制,还有一些是因为储蓄出现的定时,不管是处于哪一种定时类型,基本上都可以使用APScheduler模块进行协助工作,本文给大家介绍定时模块的使用方法。

APScheduler与第三方模块安装方式一样,使用pip,安装过程如下:

Python APScheduler执行使用方法详解

常见的使用方式

1、APScheduler支持触发器:

DateTrigger
IntervalTrigger
CronTrigger

2、APScheduler支持的Executor

AsyncIOExecutor
GeventExecutor
ThreadPoolExecutor

APScheduler使用示例:

import asyncio
import datetime
scheduler.add_job(async_func, trigger, args=["jobstore second, executor = second"],
 id="cron_func_test_2",
 jobstore="second",
 executor="second")

大家带入执行代码看下输出结果,小编这篇内容只是举例常规内容,还有更多的比如在执行器任务完成是,使用调度器连接,进行添加,修改等等

知识点扩展:

在APScheduler中有四个组件

  1. 触发器(trigger)包含调度逻辑,每一个作业有它自己的触发器,用于决定接下来哪一个作业会运行。除了他们自己初始配置意外,触发器完全是无状态的。简单说就是应该说明一个任务应该在什么时候执行。
  2. 作业存储(job store)存储被调度的作业,默认的作业存储是简单地把作业保存在内存中,其他的作业存储是将作业保存在数据库中。一个作业的数据将在保存在持久化作业存储时被序列化,并在加载时被反序列化。调度器不能分享同一个作业存储。
  3. 执行器(executor)处理作业的运行,他们通常通过在作业中提交制定的可调用对象到一个线程或者进城池来进行。当作业完成时,执行器将会通知调度器。
  4. 调度器(scheduler)任务控制器:通过配置executor、jobstore、trigger,使用线程池(ThreadPoolExecutor默认值20)或进程池(ProcessPoolExecutor 默认值5)并且默认最多3个(max_instances)任务实例同时运行,实现对job的增删改查等调度控制

你需要选择合适的调度器,这取决于你的应用环境和你使用APScheduler的目的。通常最常用的两个:

BlockingScheduler:当调度器是你应用中唯一要运行的东西时使用。

BackgroundScheduler:当你不运行任何其他框架时使用,并希望调度器在你应用的后台执行。

Python 相关文章推荐
python使用pyhook监控键盘并实现切换歌曲的功能
Jul 18 Python
django rest framework之请求与响应(详解)
Nov 06 Python
深入理解Python 关于supper 的 用法和原理
Feb 28 Python
Python基于pandas实现json格式转换成dataframe的方法
Jun 22 Python
Python实现重建二叉树的三种方法详解
Jun 23 Python
pycharm恢复默认设置或者是替换pycharm的解释器实例
Oct 29 Python
flask框架jinja2模板与模板继承实例分析
Aug 01 Python
python腾讯语音合成实现过程解析
Aug 01 Python
python实现贪吃蛇游戏源码
Mar 21 Python
浅谈PyTorch中in-place operation的含义
Jun 27 Python
Python基础之进程详解
May 21 Python
python实现自定义日志的具体方法
May 28 Python
flask项目集成swagger的方法
Dec 09 #Python
python的dict判断key是否存在的方法
Dec 09 #Python
python RSA加密的示例
Dec 09 #Python
python中把元组转换为namedtuple方法
Dec 09 #Python
python不同版本的_new_不同点总结
Dec 09 #Python
python中_del_还原数据的方法
Dec 09 #Python
call在Python中改进数列的实例讲解
Dec 09 #Python
You might like
php Ubb代码编辑器函数代码
2012/07/05 PHP
php中smarty模板条件判断用法实例
2015/06/11 PHP
php提取身份证号码中的生日日期以及验证是否为成年人的函数
2015/09/29 PHP
php中namespace及use用法分析
2016/12/06 PHP
php检查函数必传参数是否存在的实例详解
2017/08/28 PHP
Laravel 验证码认证学习记录小结
2019/12/20 PHP
javascript 判断中文字符长度的函数代码
2012/08/27 Javascript
原生javascript实现隔行换色
2015/01/04 Javascript
AngularJS基础教程之简单介绍
2015/09/27 Javascript
使用jQuery获取data-的自定义属性
2015/11/10 Javascript
在Linux系统中搭建Node.js开发环境的简单步骤讲解
2016/01/26 Javascript
jQuery绑定事件的几种实现方式
2016/05/09 Javascript
JavaScript中定义对象原型的两种使用方法
2016/12/15 Javascript
jQuery插件echarts去掉垂直网格线用法示例
2017/03/03 Javascript
基于jQuery封装的分页组件
2017/06/26 jQuery
详解使用webpack构建多页面应用
2017/12/21 Javascript
JS中‘hello’与new String(‘hello’)引出的问题详解
2018/08/14 Javascript
jQuery实现基本淡入淡出效果的方法详解
2018/09/05 jQuery
详解angular2.x创建项目入门指令
2018/10/11 Javascript
微信小程序云开发之数据库操作
2019/05/18 Javascript
关于ligerui子页面关闭后,父页面刷新,重新加载的方法
2019/09/27 Javascript
Python深入学习之装饰器
2014/08/31 Python
Python与Redis的连接教程
2015/04/22 Python
Python中对元组和列表按条件进行排序的方法示例
2015/11/10 Python
[原创]python爬虫(入门教程、视频教程)
2018/01/08 Python
python使用tensorflow保存、加载和使用模型的方法
2018/01/31 Python
Python访问MongoDB,并且转换成Dataframe的方法
2018/10/15 Python
Python数据类型之Set集合实例详解
2019/05/07 Python
python中break、continue 、exit() 、pass终止循环的区别详解
2019/07/08 Python
分享unittest单元测试框架中几种常用的用例加载方法
2020/12/02 Python
关于canvas.toDataURL 在iOS运行失败的问题解决
2020/09/16 HTML / CSS
《绿色蝈蝈》教学反思
2014/03/02 职场文书
计算机网络工程专业职业生涯规划书
2014/03/10 职场文书
关于清明节的演讲稿
2014/09/13 职场文书
集团财务总监岗位职责
2015/04/03 职场文书
催款律师函范文
2015/05/27 职场文书