最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

對python周期性定時器的示例詳解

 更新時間:2019年02月19日 15:41:57   作者:橘子or桔子  
今天小編就為大家分享一篇對python周期性定時器的示例詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

一、用thread實現(xiàn)定時器

py_timer.py文件

#!/usr/bin/python
#coding:utf-8

import threading
import os
import sys

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()

  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:
        break


def testlooptimer():
  print("loop timer")


if __name__ == '__main__':
  t = LoopTimer(3.0,testlooptimer)
  t.start()

二、 使用

import py_timer

def 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周期性定時器的示例詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

淮北市| 乐亭县| 汨罗市| 福贡县| 建昌县| 藁城市| 黄石市| 罗平县| 盖州市| 都兰县| 九江市| 霍林郭勒市| 鲁山县| 嵊泗县| 南投县| 云南省| 吴旗县| 包头市| 道孚县| 伊吾县| 泰来县| 安义县| 河津市| 阜新| 达尔| 永康市| 临安市| 中西区| 柳江县| 华池县| 九龙县| 孝感市| 娄烦县| 开封县| 黑河市| 株洲县| 桑日县| 晋州市| 廊坊市| 福建省| 巍山|