Python 启动定时器调用函数,以及满足条件后停止计时器
时间: 2023-08-10 09:03:10 浏览: 286
对Python定时任务的启动和停止方法详解
你可以使用 Python 的 `threading.Timer` 模块来启动定时器,并且使用条件语句来满足一定条件后停止计时器。
以下是一个示例代码,它会每隔 5 秒调用一次 `foo` 函数,直到 `flag` 变量变为 True 才会停止计时器:
```python
import threading
def foo():
print('Hello, world!')
def stop_timer(timer):
timer.cancel()
flag = False
timer = threading.Timer(5.0, foo)
timer.start()
while not flag:
if some_condition_is_met:
flag = True
stop_timer(timer)
```
在上述代码中,`threading.Timer(5.0, foo)` 表示每隔 5 秒调用一次 `foo` 函数。`timer.start()` 启动定时器。然后,通过条件语句来检查是否需要停止计时器,如果条件满足,则将 `flag` 变量设置为 True,并调用 `stop_timer(timer)` 函数来停止计时器。
阅读全文