Python 3.6.0 APScheduler 3.3.1
我有一个我刚修改过的程序来实现APScheduler。
该计划完全符合预期。
以下是我在APScheduler中添加的代码段:
def main():
sched = BackgroundScheduler()
sched.start()
sched.add_job(errordetect)
sched.add_job(errordetect, 'interval', minutes=5)
input("Press enter to exit.")
这项工作现在“运行”,然后每5分钟运行一次。我的问题是: 我必须按“Enter”手动停止工作。
有没有办法说: 1)在X时间(比如一小时)或之后停止运行 2)在X次迭代后停止(比如十二次迭代)
我想要的是每5分钟运行一小时,所以我 希望它在十二次迭代后(或一小时 - 实际上是相同的事情)自行停止。我在文档中没有找到类似的东西,但是我希望我在文档中遗漏了一些东西,或者还有另一种方法来完成我的目标。
感谢。
答案 0 :(得分:0)
x = 0
starttime = time.time()
while x < 5:
i = 0
for a_connection in ssh_conns:
errordetect(a_connection, ip_addrs[i])
i += 1
x += 1
if x == 5:
break
time.sleep(15.0 - ((time.time() - starttime) % 15.0))