python-3.x - 当 IDE 关闭时,APScheduler 不会唤醒计划的作业
问题描述
我是 APScheduler 包的新手。我已经在 MySQL 作业存储中安排了一个后台作业。该脚本运行良好,没有任何问题。我以 2 分钟的间隔安排了这项工作。只要我的 IDE (sypder) 开启,这项工作就会被执行。每当我关闭我的 IDE 时,该作业都不会进一步执行。
我也尝试过将间隔设置为秒和小时,但问题是一样的。请帮忙
下面是我的代码:
scheduler = BackgroundScheduler(.........)
......
scheduler.add_job(performjob,
'interval',
#days=1,
minutes = 2,
id='Test_Job',
start_date='2018-04-26 00:00:00',
end_date='2099-01-01 00:00:00',
args=[ob1,ob2],
name = "First Job for testing")
scheduler.add_listener(my_listener, EVENT_JOB_EXECUTED | EVENT_JOB_ERROR | EVENT_JOB_MISSED | EVENT_SCHEDULER_STARTED)
try:
scheduler.start()
except Exception as e:
pass
解决方案
您需要在单独的进程中启动调度程序。将启动命令放入 bash 文件中,将其命名为 scheduler_start.sh
然后在终端
scheduler_start.sh; < ctrl > Z; bg; disown -h %1
还有其他几种方法可以在后台运行命令。阅读更多关于它的信息。
推荐阅读
- animation - 使用 Framer Motion 向上滚动显示动画
- android - 文本字符串必须在文本组件中呈现
- android - 检查 Kotlin 中是否授予权限时出错
- java - 尝试使用 Java API 在 Red Hat SSO 7.3 (Keycloak) 上重置用户密码时出现错误 400
- c - 如何从字符串中获取枚举的值
- python - 在我的代码中 EOFError: EOF when reading a line
- github - GitHub 操作在合并时运行两次
- python - 尝试从网站上抓取数据时,BeautifulSoup 似乎永远加载或永远不会返回任何内容
- google-cloud-platform - 是否可以通过 GCP 中的云功能或云运行来触发云存储?
- javascript - 根据自定义条件递归过滤树