python定时任务 sched模块用法实例


Posted in Python onNovember 04, 2019

这篇文章主要介绍了python定时任务 sched模块用法实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

通过sched模块可以实现通过自定义时间,自定义函数,自定义优先级来执行函数。

schedule = sched.scheduler( time.time,time.sleep)

schedule是一个对象,叫什么名字都可以。

schedule.enter(delay,priority,action,arguments)

delay:第一个参数是一个整数或浮点数,代表多少秒后执行这个action任务

priority:第二个参数是优先级,0代表优先级最高,1次之,2次次之,当两个任务是预定在同一个时刻执行时,根据优先级决定谁先执行。

action:第三个参数就是你要执行的任务,可以简单理解成你要执行任务的函数的函数名

arguments:第四个参数是你要传入这个定时执行函数名函数的参数,最好用括号包起来,如果只传入一个参数的时候用括号包起来,该参数后面一定要加一个逗号,如果不打逗号,会出现错误。

例如schedule.enter(delay, priority, action, (argument1,))

run()一直被阻塞,直到所有任务全部执行结束。每个任务在同一线程中运行,所以如果一个任务执行时间大于
其他任务的等待时间,那么其他任务会推迟任务的执行时间,这样保证没有任务丢失,但这些任务的调用时间会比设定的推迟。

代码实例

import time
import sched
import datetime
schedule = sched.scheduler( time.time,time.sleep)
def event_fun1():
  print("func1 Time:", datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
def event_fun2():
  print("func2 Time:", datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
def event_fun3():
  print("func3 Time:", datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))

def func1(sec):
  schedule.enter(sec,0,func1,(sec,))
  event_fun1()
def func2(sec):
  schedule.enter(sec, 0, func2, (sec,))
  event_fun2()
def func3(sec):
  schedule.enter(sec, 0, func3, (sec,))
  event_fun3()

print ("start")
while True:
  nt = datetime.datetime.now()
  if nt.second == 0:
    break
  time.sleep(1)

schedule.enter(10,0,func1,(10,))
schedule.enter(30,0,func2,(30,))
schedule.enter(60,0,func3,(60,))
schedule.run()
print("end")

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python对小数进行除法运算的正确方法示例
Aug 25 Python
Python中decorator使用实例
Apr 14 Python
Django中cookie的基本使用方法示例
Feb 03 Python
python读文件保存到字典,修改字典并写入新文件的实例
Apr 23 Python
Python测试网络连通性示例【基于ping】
Aug 03 Python
Python实现对字典分别按键(key)和值(value)进行排序的方法分析
Dec 19 Python
python 一个figure上显示多个图像的实例
Jul 08 Python
python如何删除文件中重复的字段
Jul 16 Python
Python使用tkinter模块实现推箱子游戏
Oct 08 Python
Python3实现配置文件差异对比脚本
Nov 18 Python
python使用正则表达式去除中文文本多余空格,保留英文之间空格方法详解
Feb 11 Python
Python3+PyCharm+Django+Django REST framework配置与简单开发教程
Feb 16 Python
python框架flask表单实现详解
Nov 04 #Python
pycharm显示远程图片的实现
Nov 04 #Python
使用PyCharm进行远程开发和调试的实现
Nov 04 #Python
python框架django项目部署相关知识详解
Nov 04 #Python
python tkinter控件布局项目实例
Nov 04 #Python
python requests抓取one推送文字和图片代码实例
Nov 04 #Python
python 五子棋如何获得鼠标点击坐标
Nov 04 #Python
You might like
ADODB的数据库封包程序库
2006/12/31 PHP
PHP无限分类(树形类)
2013/09/28 PHP
Linux编译升级php的详细方法
2013/11/04 PHP
PHP程序漏洞产生的原因分析与防范方法说明
2014/03/06 PHP
php从给定url获取文件扩展名的方法
2015/03/14 PHP
用Jquery实现多级下拉框无刷新的联动
2010/12/22 Javascript
BAT及各大互联网公司2014前端笔试面试题--JavaScript篇
2014/10/29 Javascript
jQuery中:last-child选择器用法实例
2014/12/31 Javascript
使用JavaScript的AngularJS库编写hello world的方法
2015/06/23 Javascript
JS基于clipBoard.js插件实现剪切、复制、粘贴
2016/05/03 Javascript
整理JavaScript对DOM中各种类型的元素的常用操作
2016/05/05 Javascript
JS实现简单的tab切换选项卡效果
2016/09/21 Javascript
微信小程序之小豆瓣图书实例
2016/11/30 Javascript
node.js Sequelize实现单实例字段或批量自增、自减
2016/12/08 Javascript
bootstrapValidator bootstrap-select验证不可用的解决办法
2017/01/11 Javascript
vuejs2.0实现分页组件使用$emit进行事件监听数据传递的方法
2017/02/22 Javascript
微信小程序 支付功能实现PHP实例详解
2017/05/12 Javascript
JS 组件系列之Bootstrap Table 冻结列功能IE浏览器兼容性问题解决方案
2017/06/30 Javascript
jQuery 改变P标签文本值方法
2018/02/24 jQuery
Koa项目搭建过程详细记录
2018/04/12 Javascript
基于Vue 2.0 监听文本框内容变化及ref的使用说明介绍
2018/08/24 Javascript
解析vue、angular深度作用选择器
2019/09/11 Javascript
Angular 多模块项目构建过程
2020/02/13 Javascript
import的本质解析
2017/10/30 Python
python利用socketserver实现并发套接字功能
2018/01/26 Python
浅谈Python中的私有变量
2018/02/28 Python
用python实现百度翻译的示例代码
2018/03/09 Python
Python逐行读取文件中内容的简单方法
2019/02/26 Python
Python集中化管理平台Ansible介绍与YAML简介
2019/06/12 Python
python设置随机种子实例讲解
2019/09/12 Python
结束运行python的方法
2020/06/16 Python
毕业班联欢会主持词
2014/03/27 职场文书
房地产营销活动策划方案
2014/09/15 职场文书
承诺保证书格式
2015/02/28 职场文书
音乐剧猫观后感
2015/06/04 职场文书
使用Navicat Premium工具将oracle数据库迁移到MySQL
2021/05/27 Oracle