我的时间表设置如下:
def job():
my code
schedule.every().day.at("06:03").do(job)
schedule.every().day.at("09:56").do(job)
schedule.every().day.at("13:47").do(job)
schedule.every().day.at("17:15").do(job)
schedule.every().day.at("20:34").do(job)
schedule.every().day.at("23:46").do(job)
schedule.every().day.at("02:57").do(job)
while True:
schedule.run_pending()
sleep(1)
但是,这项工作有时需要1个小时,而另一些时间则需要10个小时。当作业花费最长的时间(10小时)时,就会出现问题。计划一结束,似乎就决定再次运行这10个小时内丢失的所有作业。
我该如何解决?
通常,当布尔值变为True时,该作业需要睡眠10个小时,否则,如果布尔值为False,则该作业大约需要1个小时。是否可以通过如下调整无限循环来解决此问题?
while True:
if my_boolean == True:
sleep(10*60*60)
my_boolean == False
else:
schedule.run_pending()
sleep(1)