一、用thread實現定時器
py_timer.py文件
#!/usr/bin/python#coding:utf-8import threadingimport osimport sysclass _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()  def cancel(self):    self.finished.set()   def run(self):    self.finished.wait(self.interval)     if not self.finished.is_set():      self.function(*self.args, **self.kwargs)    self.finished.set()    class LoopTimer(_Timer):  def __init__(self, interval, function, args=[], kwargs={}):    _Timer.__init__(self, interval, function, args, kwargs)  def run(self):    while True:      if not self.finished.is_set():        self.finished.wait(self.interval)        self.function(*self.args, **self.kwargs)       else:        breakdef testlooptimer():  print("loop timer")if __name__ == '__main__':  t = LoopTimer(3.0,testlooptimer)  t.start()二、 使用
import py_timerdef serv_start():#Perform first fork.try:      thread_timer = py_timer.LoopTimer(timeout, start_timer)      thread_timer.start()      thread_timer.cancel() #    except Exception, ex:                                  print("daemon: %s %s", type(ex), ex)def start_timer():print 'hello'以上這篇對python周期性定時器的示例詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林站長站。
新聞熱點
疑難解答