Python中设置定时器执行任务的方法详解
发布时间:2023-12-23 08:08:11
Python中设置定时器执行任务的方法可以使用threading.Timer类来实现。threading.Timer是threading.Thread的子类,用来表示一个定时器线程,它在指定的时间间隔后执行指定的函数。
使用threading.Timer设置定时器执行任务的方法如下:
1. 导入threading模块。
import threading
2. 定义要执行的任务函数。
def task():
# 任务逻辑
3. 创建定时器并设置定时任务。
timer = threading.Timer(seconds, task)
其中,seconds参数表示延迟多少秒后开始执行任务,task参数表示要执行的任务函数。
4. 启动定时器。
timer.start()
现在,定时器就开始计时,经过指定的时间后会执行任务函数。
下面是一个使用threading.Timer设置定时器执行任务的例子,该例子每隔5秒输出一条消息:
import threading
def task():
print("Running task")
timer = threading.Timer(5, task)
timer.start()
输出结果如下:
Running task Running task Running task ...
在上面的例子中,定时器每间隔5秒执行一次任务函数,直到程序结束。
在实际应用中,还可以使用threading.Timer设置周期性任务,即每隔一段时间重复执行任务。可以通过在任务函数中再次创建定时器实现周期性任务的循环。下面是一个每隔1秒输出一条消息的例子:
import threading
def task():
print("Running task")
# 创建下一个周期的定时器
timer = threading.Timer(1, task)
timer.start()
timer = threading.Timer(1, task)
timer.start()
输出结果如下:
Running task Running task Running task ...
在上面的例子中,任务函数在执行完一次后会再次创建定时器,以实现定时任务的周期性执行。
需要注意的是,当设置了定时器后,如果主线程结束了,但是定时器还未执行完成,那么定时器会继续执行剩余的任务,直到所有任务执行完毕。
