假设我想按间隔时间重新启动事件循环,如下所示:
from time import sleep
def event_loop():
print('Restart')
while True: # Note :: This is an indefinite loop
# Process some stuff.
print("I'm a process")
sleep(1)
magic_tool(interval_time=5, func=event_loop)
预期结果:
Restart
I'm a process
I'm a process
I'm a process
I'm a process
I'm a process
Restart
I'm a process
I'm a process
I'm a process
I'm a process
I'm a process
Restart
I'm a process
.
.
.
<小时/>
我读到了关于 twisted
、threading.Time
和 apscheduler.scheduler
的内容,但我无法做到这一点。
我想我可以通过async.timeout.timeout()
来做到这一点,但我使用的是Python2.7
最佳答案
试试这个:
import threading
def event_loop():
print("do_something")
some_flag=True
while some_flag:
timer = threading.Timer(2.0, event_loop)
timer.start()
关于python - 如何在Python中按间隔时间重置循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53578980/