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()

其中,enters中添加事件,其前两个参数分别代表延时时长和任务执行顺序;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

所以,熟练使用threadsched,就可以安排定时任务了。

Python定时任务:sched相关推荐

  1. python schedule多线程_Python定时任务sched模块用法示例

    本文实例讲述了Python定时任务sched模块用法.分享给大家供大家参考,具体如下: 通过sched模块可以实现通过自定义时间,自定义函数,自定义优先级来执行函数. 范例一 import time ...

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

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

  3. python sched_Python定时任务sched模块用法示例

    本文实例讲述了Python定时任务sched模块用法.分享给大家供大家参考,具体如下: 通过sched模块可以实现通过自定义时间,自定义函数,自定义优先级来执行函数. 范例一 import time ...

  4. Python事件调度器定时任务sched

    文章目录 简介 初试 解析 参考文献 简介 sched是Python的内置模块,用于事件调度,可在安全的在多线程环境中轻松实现定时任务. 但该方法会阻塞线程,直到所有被调度的任务都执行完成. 初试 i ...

  5. python 定时任务

    Python 定时任务 最近学习到了 python 中两种开启定时任务的方法,和大家分享一下心得. sched.scheduler() threading.Timer() sched 定时任务 使用s ...

  6. Python 定时任务的实现方式

    背景 目前所在的项目组需要经常执行一些定时任务,于是选择使用 Python 的定时器. Python 实现定时任务 循环 sleep 这种方式最简单,在循环里面放入要执行的任务,然后 sleep 一段 ...

  7. python定时任务:apscheduler的使用(还有一个celery~)

    APScheduler简介 在平常的工作中几乎有一半的功能模块都需要定时任务来推动,例如项目中有一个定时统计程序,定时爬出网站的URL程序,定时检测钓鱼网站的程序等等,都涉及到了关于定时任务的问题,第 ...

  8. python定时任务_Python定时任务(上)

    在项目中,我们可能遇到有定时任务的需求.其一:定时执行任务.例如每天早上 8 点定时推送早报.其二:每隔一个时间段就执行任务.比如:每隔一个小时提醒自己起来走动走动,避免长时间坐着.今天,我跟大家分享 ...

  9. python定时任务框架_Python定时任务框架APScheduler

    APScheduler是基于Quartz的一个Python定时任务框架,实现了Quartz的所有功能,使用起来十分方便.提供了基于日期.固定时间间隔以及crontab类型的任务,并且可以持久化任务.基 ...

  10. Python定时任务框架APScheduler

    2019独角兽企业重金招聘Python工程师标准>>> APScheduler是基于Quartz的一个Python定时任务框架,实现了Quartz的所有功能,使用起来十分方便.提供了 ...

最新文章

  1. lamp不解析php,LAMP环境下不能解析php原因及排查步骤
  2. tidb mysql hbase_HBase/TiDB都在用的数据结构:LSM Tree,不得了解一下?
  3. 高维多元数据拟合回归如何进行???
  4. hp打印机无法与计算机,电脑中安装HP打印机后重启无法打印的解决方法
  5. SpringCloud系列——Zuul 动态路由
  6. WordPress的varnish内存缓存方案
  7. java多线程中volatile关键字
  8. CDH HUE集成yarn
  9. asp.net 操作ftp 通用代码[测试通过]
  10. MFC中的CString类使用方法指南
  11. 【MyBatis框架】SqlMapConfig剖析
  12. php yii开发工具,开源PHP开发框架Yii教程
  13. 服务器端可控情形的Javascript跨域访问解决方法
  14. 【转】LoadRunner使用Libmemcached与Memcached通讯
  15. 【Tensorflow踩过的坑儿】pb转pbtxt
  16. PS批量制作获奖证书并导出PNG
  17. 阿里巴巴的盈利模式分析
  18. linux 运维安全,运维安全有哪些分类呢?linux学习线路图
  19. 构建红图注册到蓝图中
  20. nvidia卸载程序失败_英伟达显卡驱动安装失败怎么办?

热门文章

  1. linux网卡名字enp3s0,Linux网卡命名enp3s0说明
  2. [翻译] [Overleaf] LaTeX 中的粗体、斜体、下划线
  3. Spring Boot 官方文档中文版
  4. Java多线程实现文件上传
  5. mac切换jdk版本
  6. C# TabControl
  7. 学习weka(7):weka数据预处理方法
  8. 设置双核浏览器的浏览模式 meta name renderer content webkit|ie comp|ie
  9. Windows开发:映射网络共享目录(磁盘映射)
  10. Unity Shader特效:模型溶解、燃烧