【发布时间】:2019-06-30 13:53:50
【问题描述】:
我有一个主要功能,所有任务都位于其中。我要连续运行的第一个任务。我想在特定日期运行第二个任务(例如:每周一上午 12 点)。最后一个任务必须重新运行 main 函数,但要使用其他参数(我想每小时运行一次这个任务)。 我在 Ubuntu 18 上使用 Python。
我尝试使用模块“schedule”并在此处搜索堆栈溢出的答案,谷歌,......但我没有发现任何有用的东西。
import schedule, time
def main(par1, par2, par3):
def task1():
# Do something
print("Executing task1")
def task2():
# Do something different
print("Executing task2")
def rerunTask():
print("Reruning main task")
main(1,2,3) # Rerun main function with other parameters
schedule.every().monday.at("12:00").do(task2)
schedule.every(0.5).seconds.do(task1)
schedule.every().hour.do(rerunTask)
main(2,3,1)
当我尝试这段代码时,一切正常,直到“重新运行任务”。在他执行完这个任务之后,他会在剩下的时间里不断地重新运行这个函数。
有人可以帮帮我吗?
【问题讨论】: