Python: 定时器(Timer)简单实现
2024-08-22 22:09:14
项目分析中发现有网站下载过程中需要发送心跳指令,复习下定时器,其与javascript中实现方法类似。
其原理为执行函数中置定时函数Timer(),递归调用自己,看来实现方法比较拙劣。
假定1秒触发一次,并置结束条件为15秒:
import threading
import time exec_count = 0 def heart_beat():
print time.strftime('%Y-%m-%d %H:%M:%S') global exec_count
exec_count += 1
# 15秒后停止定时器
if exec_count < 15:
threading.Timer(1, heart_beat).start() heart_beat()
另一种判断方式:
import threading
import time cancel_tmr = False def heart_beat():
print time.strftime('%Y-%m-%d %H:%M:%S')
if not cancel_tmr:
threading.Timer(1, heart_beat).start() heart_beat()
# 15秒后停止定时器
time.sleep(15)
cancel_tmr = True
最新文章
- Jsonp跨域
- Linux系统之用户、群组和权限
- 小项目:mini资源管理器【使用IO流:包含(Directory与DirectoryInfo、File与FileInfo的用法)】
- 【网络收集】获取JavaScript 的时间使用内置的Date函数完成
- LeetCode: Word Break I &;&; II
- COJ 1006 树上操作
- mysql----二进制包安装
- C语言程序设计进阶 翁恺 第4周编程练习
- ABC卡
- LOD,听起来很牛逼的样子
- 分布式配置 tachyon 并执行Hadoop样例 MapReduce
- es 模板
- Internet History, Technology and Security (Week 5-1)
- 雷林鹏分享:Ruby Dir 类和方法
- 解决iOS项目根目录下文件乱七八糟的问题
- datatable无法设置横向滚动条(设置无效)
- Smart Client技术简要总结
- OpenGL学习进程(8)第六课:点、边和图形(三)绘制图形
- UML总结:UML用于建模描述结构和行为
- Maven的学习资料收集--(六) 构建Hibernate项目