对python周期性定时器的示例详解
一、用thread实现定时器
py_timer.py文件
#!/usr/bin/python
#coding:utf-8
importthreading
importos
importsys
class_Timer(threading.Thread):
def__init__(self,interval,function,args=[],kwargs={}):
threading.Thread.__init__(self)
self.interval=interval
self.function=function
self.args=args
self.kwargs=kwargs
self.finished=threading.Event()
defcancel(self):
self.finished.set()
defrun(self):
self.finished.wait(self.interval)
ifnotself.finished.is_set():
self.function(*self.args,**self.kwargs)
self.finished.set()
classLoopTimer(_Timer):
def__init__(self,interval,function,args=[],kwargs={}):
_Timer.__init__(self,interval,function,args,kwargs)
defrun(self):
whileTrue:
ifnotself.finished.is_set():
self.finished.wait(self.interval)
self.function(*self.args,**self.kwargs)
else:
break
deftestlooptimer():
print("looptimer")
if__name__=='__main__':
t=LoopTimer(3.0,testlooptimer)
t.start()
二、使用
importpy_timer
defserv_start():
#Performfirstfork.
try:
thread_timer=py_timer.LoopTimer(timeout,start_timer)
thread_timer.start()
thread_timer.cancel()#
exceptException,ex:
print("daemon:%s%s",type(ex),ex)
defstart_timer():
print'hello'
以上这篇对python周期性定时器的示例详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。
热门推荐
10 新年发给客户祝福语简短
11 日常祝福语简短语客户
12 人民子弟春节祝福语简短
13 鱼的内涵简短祝福语
14 离别祝福语简短送同事
15 哥哥病了祝福语大全简短
16 高温早安祝福语简短精辟
17 對好友毕业祝福语简短
18 朋友弟弟生日祝福语简短