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中的With语句
Feb 02 Python
Python基于回溯法子集树模板实现图的遍历功能示例
Sep 05 Python
Python常用字符串替换函数strip、replace及sub用法示例
May 21 Python
Python3 读、写Excel文件的操作方法
Oct 20 Python
Python XlsxWriter模块Chart类用法实例分析
Mar 11 Python
Python数据类型之Set集合实例详解
May 07 Python
Python高级特性 切片 迭代解析
Aug 23 Python
PHP统计代码行数的小代码
Sep 19 Python
python二维键值数组生成转json的例子
Dec 06 Python
Python之Class&Object用法详解
Dec 25 Python
Django认证系统user对象实现过程解析
Mar 02 Python
Python字典fromkeys()方法使用代码实例
Jul 20 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
PHP.MVC的模板标签系统(一)
2006/09/05 PHP
PHP操作数组相关函数
2011/02/03 PHP
让PHP显示Facebook的粉丝数量方法
2014/01/08 PHP
PHP使用Face++接口开发微信公众平台人脸识别系统的方法
2015/04/17 PHP
php中json_encode不兼容JSON_UNESCAPED_UNICODE的解决方案
2016/05/31 PHP
PHP实现找出链表中环的入口节点
2018/01/16 PHP
js获取class的所有元素
2013/03/28 Javascript
解决jquery操作checkbox火狐下第二次无法勾选问题
2014/02/10 Javascript
jQuery实现单击和鼠标感应事件
2015/02/01 Javascript
深入浅出分析javaScript中this用法
2015/05/09 Javascript
jQuery Validate验证框架经典大全
2015/09/23 Javascript
Extjs4.0 ComboBox如何实现三级联动
2016/05/11 Javascript
学习Angular中作用域需要注意的坑
2016/08/17 Javascript
js制作网站首页图片轮播特效代码
2016/08/30 Javascript
深入理解vue.js中的v-if和v-show
2017/06/22 Javascript
在Vue中使用echarts的实例代码(3种图)
2017/07/10 Javascript
利用three.js画一个3D立体的正方体示例代码
2017/11/19 Javascript
vue 实现通过手机发送短信验证码注册功能
2018/04/19 Javascript
微信小程序全局变量的设置、使用、修改过程解析
2019/09/24 Javascript
微信小程序接入腾讯云验证码的方法步骤
2020/01/07 Javascript
JavaScript对象字面量和构造函数原理与用法详解
2020/04/18 Javascript
JS实现鼠标移动拖尾
2020/12/27 Javascript
[04:36]DOTA2国际邀请赛 ti3精彩集锦
2013/08/19 DOTA
Python中optparse模块使用浅析
2015/01/01 Python
python实现音乐下载的统计
2018/06/20 Python
在ubuntu16.04中将python3设置为默认的命令写法
2018/10/31 Python
浅谈PyQt5 的帮助文档查找方法,可以查看每个类的方法
2019/06/25 Python
python3.5 cv2 获取视频特定帧生成jpg图片
2019/08/28 Python
python实现定时发送邮件到指定邮箱
2020/12/23 Python
Opencv 图片的OCR识别的实战示例
2021/03/02 Python
Michael Kors香港官网:美国奢侈品品牌
2019/12/26 全球购物
酒店门卫岗位职责
2013/12/29 职场文书
班长自荐书范文
2014/02/11 职场文书
移交协议书
2014/08/19 职场文书
办公室领导干部作风整顿个人整改措施
2014/09/17 职场文书
2014个人年终工作总结范文
2014/12/15 职场文书