0

我遇到了这个常见问题解答,表明在两个或多个进程之间共享持久作业存储将导致不正确的调度程序行为:

如何在一个或多个工作进程之间共享一个作业存储?

My question is:如果只有一个工作调度程序已通过 .start() 启动,并且另一个调度程序进程在同一个持久性 sqlite 作业存储上初始化,只是为了打印某个触发器job_id(不会调用 .start()),这会导致调度程序行为不正确的情况吗?

使用apscheduler 3.6.3

4

1 回答 1

1

是的。首先,必须启动调度程序才能返回永久存储的作业列表。另一个潜在问题是当前的 APScheduler 版本会删除检索时找不到相应任务功能的任何作业。此行为最初是为了清除过时的作业而添加的,但回想起来是错误的,将在 v4.0 中删除。

从好的方面来说,可以在暂停模式下启动调度程序,这样它就不会尝试运行任何作业,但仍会为您提供作业列表,只要所有目标函数都是可导入的。

于 2021-08-05T06:44:33.700 回答