定时器
参考教程:
73-Python多线程-定时器
- 作用:控制函数在特定时间执行,原理比较简单,指定时间间隔后启动线程!适用场景:完成定时任务,例如:定时提醒、闹钟等等
- 语法:
threading.Timer(interval, function, args=[], kwargs={})
用以创建一个定时器
参数:
interval
— 定时器间隔,间隔多少秒之后启动定时器任务(单位:秒);
function
— 线程函数;
args
— 线程参数,可以传递元组类型数据,默认为空(缺省参数);
kwargs
— 线程参数,可以传递字典类型数据,默认为空(缺省参数)
start()
用以启动定时器
cancel()
可以在定时过程中取消定时器
实例一:
import threading
def run():
print("启动定时器")
timer = threading.Timer(5, function=run) # 重新创建定时器,使得定时器能够一直工作
timer.start() # 启动定时器
if __name__ == '__main__':
t1 = threading.Timer(5, function=run) # 创建定时器
t1.start() # 启动定时器
结果:每隔5秒打印一次定时器
启动定时器
启动定时器
...
...
...
实例二:
"""
使用定时器实现当前时间每秒循环输出一次
"""
import threading
import time
def print_time():
print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())) # 获取当前时间
t = threading.Timer(1, function=print_time) # 重新创建定时器,使得定时器能够一直工作
t.start() # 启动定时器
t1 = threading.Timer(1, function=print_time) # 创建定时器
t1.start() # 启动定时器
结果:每隔一秒打印当前时间
2022-01-11 02:22:10
2022-01-11 02:22:11
2022-01-11 02:22:12
2022-01-11 02:22:13
2022-01-11 02:22:14
...
...
...