香港云主机最佳企业级服务商!

ADSL拨号VPS包含了中国大陆(联通,移动,电信,)

中国香港,国外拨号VPS。

当前位置:云主机 > python >

电信ADSL拨号VPS
联通ADSL拨号VPS
移动ADSL拨号VPS

对python周期性定时器的示例详解


时间:2022-04-02 10:17 作者:admin610456


一、用thread实现定时器

py_timer.py文件

#!/usr/bin/python/' target='_blank'>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周期性定时器的示例详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

(责任编辑:admin)






帮助中心
会员注册
找回密码
新闻中心
快捷通道
域名登录面板
虚机登录面板
云主机登录面板
关于我们
关于我们
联系我们
联系方式

售前咨询:17830004266(重庆移动)

企业QQ:383546523

《中华人民共和国工业和信息化部》 编号:ICP备00012341号

Copyright © 2002 -2018 香港云主机 版权所有
声明:香港云主机品牌标志、品牌吉祥物均已注册商标,版权所有,窃用必究

云官方微信

在线客服

  • 企业QQ: 点击这里给我发消息
  • 技术支持:383546523

  • 公司总台电话:17830004266(重庆移动)
  • 售前咨询热线:17830004266(重庆移动)