Python定时任务:sched
sched
可用于定时任务,唯一需要注意的就是,这些任务在一个线程中运行,如果前面的任务耗时过长,则后面的任务将顺延执行。
但其使用方法还是很简单的,主要封装了一个类scheduler
import sched
import timedef printName(name):print(name,"@",time.time())s = sched.scheduler()
s.enter(5,1,printName,("5 - 1",))
s.enter(5,2,printName,("5 - 2",))
s.enter(10,1,printName,("10 - 1",))
s.run()
其中,enter
为s
中添加事件,其前两个参数分别代表延时时长和任务执行顺序;printName
为将要执行的函数,("5-1",)
为参数列表,表示第5s执行的第一个任务。
其执行结果如下
5 - 1 @ 1649725436.606954
5 - 2 @ 1649725436.6229577
10 - 1 @ 1649725441.6388779
如果在函数中加一个延时,则后面的任务将顺延
def printName(name):print(name,"@",time.time())time.sleep(6)
其输出结果为
5 - 1 @ 1649725617.7624931
5 - 2 @ 1649725623.7689147
10 - 1 @ 1649725629.7827168
与enter
相对的是cancel(evt)
和empty
,前者可以删除某个事件,后者可以清空所有事件。
如果配合thread
使用,则可以解决sched
阻塞的问题。
import sched
import threading
import timedef printNameByThread(name):threading.Thread(target=printName,args=[name]).start()s = sched.scheduler()
s.enter(5,1,printNameByThread,("5 - 1",))
s.enter(5,2,printNameByThread,("5 - 2",))
s.enter(10,1,printNameByThread,("10 - 1",))s.run()
其输出结果为
5 - 1 @ 1649725777.2276525
5 - 2 @ 1649725777.2276525
10 - 1 @ 1649725782.2158542
所以,熟练使用thread
和sched
,就可以安排定时任务了。
Python定时任务:sched相关推荐
- python schedule多线程_Python定时任务sched模块用法示例
本文实例讲述了Python定时任务sched模块用法.分享给大家供大家参考,具体如下: 通过sched模块可以实现通过自定义时间,自定义函数,自定义优先级来执行函数. 范例一 import time ...
- python sched_python定时任务 sched模块用法实例
这篇文章主要介绍了python定时任务 sched模块用法实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 通过sched模块可以实现通过自定义时 ...
- python sched_Python定时任务sched模块用法示例
本文实例讲述了Python定时任务sched模块用法.分享给大家供大家参考,具体如下: 通过sched模块可以实现通过自定义时间,自定义函数,自定义优先级来执行函数. 范例一 import time ...
- Python事件调度器定时任务sched
文章目录 简介 初试 解析 参考文献 简介 sched是Python的内置模块,用于事件调度,可在安全的在多线程环境中轻松实现定时任务. 但该方法会阻塞线程,直到所有被调度的任务都执行完成. 初试 i ...
- python 定时任务
Python 定时任务 最近学习到了 python 中两种开启定时任务的方法,和大家分享一下心得. sched.scheduler() threading.Timer() sched 定时任务 使用s ...
- Python 定时任务的实现方式
背景 目前所在的项目组需要经常执行一些定时任务,于是选择使用 Python 的定时器. Python 实现定时任务 循环 sleep 这种方式最简单,在循环里面放入要执行的任务,然后 sleep 一段 ...
- python定时任务:apscheduler的使用(还有一个celery~)
APScheduler简介 在平常的工作中几乎有一半的功能模块都需要定时任务来推动,例如项目中有一个定时统计程序,定时爬出网站的URL程序,定时检测钓鱼网站的程序等等,都涉及到了关于定时任务的问题,第 ...
- python定时任务_Python定时任务(上)
在项目中,我们可能遇到有定时任务的需求.其一:定时执行任务.例如每天早上 8 点定时推送早报.其二:每隔一个时间段就执行任务.比如:每隔一个小时提醒自己起来走动走动,避免长时间坐着.今天,我跟大家分享 ...
- python定时任务框架_Python定时任务框架APScheduler
APScheduler是基于Quartz的一个Python定时任务框架,实现了Quartz的所有功能,使用起来十分方便.提供了基于日期.固定时间间隔以及crontab类型的任务,并且可以持久化任务.基 ...
- Python定时任务框架APScheduler
2019独角兽企业重金招聘Python工程师标准>>> APScheduler是基于Quartz的一个Python定时任务框架,实现了Quartz的所有功能,使用起来十分方便.提供了 ...
最新文章
- lamp不解析php,LAMP环境下不能解析php原因及排查步骤
- tidb mysql hbase_HBase/TiDB都在用的数据结构:LSM Tree,不得了解一下?
- 高维多元数据拟合回归如何进行???
- hp打印机无法与计算机,电脑中安装HP打印机后重启无法打印的解决方法
- SpringCloud系列——Zuul 动态路由
- WordPress的varnish内存缓存方案
- java多线程中volatile关键字
- CDH HUE集成yarn
- asp.net 操作ftp 通用代码[测试通过]
- MFC中的CString类使用方法指南
- 【MyBatis框架】SqlMapConfig剖析
- php yii开发工具,开源PHP开发框架Yii教程
- 服务器端可控情形的Javascript跨域访问解决方法
- 【转】LoadRunner使用Libmemcached与Memcached通讯
- 【Tensorflow踩过的坑儿】pb转pbtxt
- PS批量制作获奖证书并导出PNG
- 阿里巴巴的盈利模式分析
- linux 运维安全,运维安全有哪些分类呢?linux学习线路图
- 构建红图注册到蓝图中
- nvidia卸载程序失败_英伟达显卡驱动安装失败怎么办?
热门文章
- linux网卡名字enp3s0,Linux网卡命名enp3s0说明
- [翻译] [Overleaf] LaTeX 中的粗体、斜体、下划线
- Spring Boot 官方文档中文版
- Java多线程实现文件上传
- mac切换jdk版本
- C# TabControl
- 学习weka(7):weka数据预处理方法
- 设置双核浏览器的浏览模式 meta name renderer content webkit|ie comp|ie
- Windows开发:映射网络共享目录(磁盘映射)
- Unity Shader特效:模型溶解、燃烧