Python 定时器
时间: 2024-05-27 12:07:22 浏览: 88
Python定时器线程池原理详解
Python 定时器是一种能够在指定的时间间隔内重复执行指定的任务的机制。Python 提供了多种方式来实现定时器,其中常用的包括 `time` 和 `sched` 等。这些包都提供了一些函数和类来帮助我们实现定时器功能。
使用 `time` 包的 `sleep()` 函数可以实现简单的定时器功能,但它不够灵活,因为它会阻塞当前线程。
而使用 `sched` 包则可以实现更为灵活的定时器功能。我们可以使用 `sched` 的 `scheduler` 类来创建一个定时器对象,然后使用 `enter()` 方法来添加需要执行的任务。通过设置不同的时间间隔和任务,可以实现不同的定时器效果。
下面是一个使用 `sched` 包实现定时器的简单示例:
```python
import sched
import time
# 创建一个 scheduler 对象
s = sched.scheduler(time.time, time.sleep)
# 定义需要执行的任务
def print_time():
print("Current time:", time.time())
# 添加任务到 scheduler
s.enter(5, 1, print_time, ())
# 启动 scheduler
s.run()
```
上述代码中,我们创建了一个 `scheduler` 对象,并定义了一个需要执行的任务 `print_time()`,然后将任务添加到 scheduler 中,并设置执行间隔为 5 秒。最后,通过调用 `run()` 方法启动 scheduler,程序会每隔 5 秒输出当前时间。
阅读全文