为什么从未调用预定函数?

Why is the scheduled function never called?

我有这个非常简单的代码来在后台启动计划任务,但没有打印任何内容:

def printit():
    print("Hello, World!")


scheduler = sched.scheduler(time.time, time.sleep)
scheduler.enter(2, 1, printit)
scheduler.run(blocking=False)

while True:
    time.sleep(1)

如果我将 blocking 设置为 true,它就会起作用。有什么想法吗?

您并未将调度程序的控制权交还给调度程序。稍后尝试 运行。

def printit():
print("Hello, World!")

scheduler = sched.scheduler(time.time, time.sleep)
scheduler.enter(2, 1, printit)

while True:
    time.sleep(1) # optional to prevent thrash
    scheduler.run(blocking=False)