使用线程 实现一个延时器和按照一定时间间隔执行的循环定时器
import threading # 导入threading模块
import time
# 开始时间点
st = time.time()
def timer_headle(): # 定时器触发函数
print('Timer headle! ', time.time() - st)
timer = threading.Timer(1, timer_headle) # 实例化定时器线程,1秒后
timer.start()
# 2 实现定时器的循环触发
# 执行完成后重新启动定时器
def loop_timer_headle():
print('loop Timer headle! ', time.time() - st)
global timer2
timer2 = threading.Timer(1, loop_timer_headle)
timer2.start()
timer2 = threading.Timer(1, loop_timer_headle)
timer2.start()
time.sleep(10) # 15秒后停止定时器
timer2.cancel()
Timer headle! 1.00115966796875
loop Timer headle! 1.00115966796875
loop Timer headle! 2.0018160343170166
loop Timer headle! 3.0019609928131104
loop Timer headle! 4.002151727676392
loop Timer headle! 5.002312898635864
loop Timer headle! 6.003599643707275
loop Timer headle! 7.00408673286438
loop Timer headle! 8.005065679550171
loop Timer headle! 9.00623106956482