Python调度库的机制

时间:2018-01-22 22:13:09

标签: python schedule

我想将Schedule库用于Python,但我不太明白它是如何工作的。

def job():
    % my program here

schedule.every().day.at("10:30").do(job)

如果我从终端运行此代码一次,它是否会在每天10:30运行job?或者我还需要添加以下内容:

while True:
    schedule.run_pending()
    time.sleep(1)

(我从库的github获取所有这些代码)

或者我是否需要continuously run the scheduler without blocking the main thread,如图书馆常见问题解答中所述?

我的终端总是需要打开吗?

1 个答案:

答案 0 :(得分:1)

根据您已关联的github文档以及developer interface,您必须将run_pending()和一些sleep长度放在无限循环中。

您不需要从另一个线程运行调度程序,除非您的程序在主线程中执行除调度之外的操作。如果您只是使用它来安排,则没有必要。

如果您关闭终端,整个程序将关闭,所以终端需要保持打开状态。