计划python,作业继续运行

时间:2020-06-06 17:22:16

标签: python schedule

我的时间表设置如下:

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)

0 个答案:

没有答案