python使用线程封装的一个简单定时器类实例


Posted in Python onMay 16, 2015

本文实例讲述了python使用线程封装的一个简单定时器类。分享给大家供大家参考。具体实现方法如下:

from threading import Timer
class MyTimer:
 def __init__(self):
 self._timer= None
 self._tm = None
 self._fn = None
 def _do_func(self):
 if self._fn:
  self._fn()
  self._do_start()
 def _do_start(self):
 self._timer = Timer(self._tm, self._do_func)
 self._timer.start()
 def start(self, tm, fn):
 self._fn = fn
 self._tm = tm
 self._do_start()
 def stop(self):
 try:
  self._timer.cancel()
 except:
  pass
def hello():
 from datetime import datetime
 print("hello world!", datetime.now())
if __name__ == '__main__':
 mt = MyTimer()
 mt.start(2, hello)
 for i in range(10):
 import time
 time.sleep(1)
 mt.stop()

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
Python程序设计入门(1)基本语法简介
Jun 13 Python
python flask实现分页效果
Jun 27 Python
django实现登录时候输入密码错误5次锁定用户十分钟
Nov 05 Python
python在ubuntu中的几种安装方法(小结)
Dec 08 Python
python实现多线程网页下载器
Apr 15 Python
详解TensorFlow查看ckpt中变量的几种方法
Jun 19 Python
10分钟教你用Python实现微信自动回复功能
Nov 28 Python
python进行文件对比的方法
Dec 24 Python
python导入不同目录下的自定义模块过程解析
Nov 18 Python
Python破解BiliBili滑块验证码的思路详解(完美避开人机识别)
Feb 17 Python
如何使用python传入不确定个数参数
Feb 18 Python
PyQt5事件处理之定时在控件上显示信息的代码
Mar 25 Python
python通过函数属性实现全局变量的方法
May 16 #Python
Python中计算三角函数之cos()方法的使用简介
May 15 #Python
用Python计算三角函数之atan()方法的使用
May 15 #Python
Python计算三角函数之asin()方法的使用
May 15 #Python
用Python计算三角函数之acos()方法的使用
May 15 #Python
python实现一次创建多级目录的方法
May 15 #Python
python使用wmi模块获取windows下硬盘信息的方法
May 15 #Python
You might like
不用数据库的多用户文件自由上传投票系统(3)
2006/10/09 PHP
PHP新手上路(八)
2006/10/09 PHP
DISCUZ 论坛管理员密码忘记的解决方法
2009/05/14 PHP
javascript实现数字+字母验证码的简单实例
2014/02/10 Javascript
jQuery中html()方法用法实例
2014/12/25 Javascript
AngularJS页面访问时出现页面闪烁问题的解决
2016/03/06 Javascript
jQuery代码实现表格中点击相应行变色功能
2016/05/09 Javascript
JS作为值的函数用法示例
2016/06/20 Javascript
静态页面html中跳转传值的JS处理技巧
2016/06/22 Javascript
javaScript给元素添加多个class的简单实现
2016/07/20 Javascript
js前端实现图片懒加载(lazyload)的两种方式
2017/04/24 Javascript
angular学习之从零搭建一个angular4.0项目
2017/07/10 Javascript
Vue.js递归组件构建树形菜单
2017/12/24 Javascript
jQuery中内容过滤器简单用法示例
2018/03/31 jQuery
Vue.js 实现微信公众号菜单编辑器功能(二)
2018/05/08 Javascript
详解React 的几种条件渲染以及选择
2018/10/23 Javascript
微信小程序自定义toast弹窗效果的实现代码
2018/11/15 Javascript
Vue 处理表单input单行文本框的实例代码
2019/05/09 Javascript
JavaScript实现模态对话框实例
2020/01/13 Javascript
jQuery 判断元素是否存在然后按需加载内容的实现代码
2020/01/16 jQuery
vue实现页面切换滑动效果
2020/06/29 Javascript
JS实现纸牌发牌动画
2021/01/19 Javascript
[13:25]VP vs VICI (BO3)
2018/06/07 DOTA
python使用reportlab画图示例(含中文汉字)
2013/12/03 Python
Python 迭代器工具包【推荐】
2016/05/06 Python
Python 常用的安装Module方式汇总
2017/05/06 Python
Django中Model的使用方法教程
2018/03/07 Python
django 自定义过滤器的实现
2019/02/26 Python
Python求两点之间的直线距离(2种实现方法)
2019/07/07 Python
python 服务器运行代码报错ModuleNotFoundError的解决办法
2020/09/16 Python
HSRP的含义以及如何工作
2014/09/10 面试题
商铺租房协议书范本
2014/12/04 职场文书
保险公司岗前培训工作总结
2015/10/24 职场文书
求职自我评价参考范文
2019/05/16 职场文书
使用springMVC所需要的pom配置
2021/09/15 Java/Android
CSS实现九宫格布局(自适应)的示例代码
2022/02/12 HTML / CSS