APScheduler 后台调度程序不工作?

APScheduler Background Scheduler Not working?

我正在使用后台调度程序来安排我的工作。当我在控制台中执行 python 脚本时,未执行打印语句。调度程序正在终止吗?下面是我的示例代码

from apscheduler.schedulers.background import BackgroundScheduler

def my_task1():
    print("Task 1")
def ny_task2():
    print("Task 2")
if __name__=='__main__':
     scheduler = BackgroundScheduler()
     scheduler.add_job(my_task1, 'cron', id='my_task1', seconds=5)
     scheduler.add_job(my_task1, 'cron', id='my_task1', seconds=10)
     scheduler.start()

当我运行在命令行中执行以下脚本。我无法在控制台中看到打印语句。我错过了什么吗?

您选择了一个在后台线程中运行的调度程序。然后让脚本退出。这就是什么都没有发生的原因。这些作业还没有时间执行。如果您想保留脚本 运行.

,请改用 BlockingScheduler

您可以使用 while 循环使其保持活动状态

from apscheduler.schedulers.background import BackgroundScheduler

def my_task1():
    print("Task 1")
def ny_task2():
    print("Task 2")
if __name__=='__main__':
     scheduler = BackgroundScheduler()
     scheduler.add_job(my_task1, 'cron', id='my_task1', seconds=5)
     scheduler.add_job(my_task1, 'cron', id='my_task1', seconds=10)
     scheduler.start()
     while True:
         time.sleep(1)