网络编程
位置:首页>> 网络编程>> Python编程>> python 定时器,轮询定时器的实例

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

作者:u013378306  发布时间:2023-07-08 04:26:57 

标签: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()

来源:https://blog.csdn.net/u013378306/article/details/79024432

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com