我想编写一个Python函数,该函数在被调用时应该仅在一段时间内执行某些任务。
例如,调用此函数时,应轮询服务器10秒钟,然后在10秒钟后退出服务器。
我考虑过这样做,但是似乎不合适。显然,此功能将花费10秒钟以上的时间。
for i in range (0, 10): # 10 seconds
poll_to_server()
time.sleep(1)
您能建议一种更好的方法吗?
答案 0 :(得分:1)
如果要重复调用poll_to_server()
函数10秒钟,则可以执行以下操作
import time
t_end = time.time() + 10
while time.time() < t_end:
poll_to_server()
函数time.time
以秒为单位返回自1970年1月1日以来的当前时间。该值以浮点数表示,因此您甚至可以亚秒精度使用它。开始时,值t_end
被计算为“现在” + 10秒。
循环将一直运行,直到当前时间超过此预设结束时间为止。