python 定时器,轮询定时器的实例

python 定时器默认定时器只执行一次,第一个参数单位S,几秒后执行

import threading

def fun_timer():

print('Hello Timer!')

timer = threading.Timer(1, fun_timer)

timer.start()

改成以下可以执行多次

建立loop_timer.py

from threading import _Timer

class LoopTimer(_Timer):

"""Call a function after a specified number of seconds:

t = LoopTi

mer(30.0, f, args=[], kwargs={})

t.start()

t.cancel() # stop the timer's action if it's still waiting

"""

def __init__(self, interval, function, args=[], kwargs={}):

_Timer.__init__(self, interval, function, args, kwargs)

def run(self):

'''self.finished.wait(self.interval)

if not self.finished.is_set():

self.function(*self.args, **self.kwargs)

self.finished.set()'''

while True:

self.finished.wait(self.interval)

if self.finished.is_set():

self.finished.set()

break

self.function(*self.args, **self.kwargs)

调用

t = LoopTimer(120, fun_timer)

t.start()

以上这篇python 定时器,轮询定时器的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

以上是 python 定时器,轮询定时器的实例 的全部内容, 来源链接: utcz.com/z/318700.html

回到顶部