python - 我们可以限制APScheduler只运行100次吗?

标签 python apscheduler

我正在使用 APScheduler每 5 分钟运行一个 python 方法。它工作完美。我需要将计划的作业迭代限制为 100。在 100 次迭代之后,它应该关闭进程。我查看了引用文档,但找不到提供此功能的任何选项。我们可以选择控制作业实例的数量,但不能控制最大迭代次数。有人知道吗?

from apscheduler.schedulers.blocking import BlockingScheduler

def job():
    print "Decorated job"

scheduler = BlockingScheduler()
scheduler.add_job(job, 'interval', minutes=5)
scheduler.start()

或 如果我得到预定的作业迭代计数,那么我还可以从代码本身中删除正在运行的作业,如下所示。

scheduler = BlockingScheduler()
scheduler.add_job(job, 'interval', minutes=5, id='my_job_id')

#iterationCount ??

if (iterationCount = 100 ):
    scheduler.remove_job('my_job_id')
    exit(0)
scheduler.start()

最佳答案

According to the documentation interval 触发器允许设置作业的时间范围:

You can use start_date and end_date to limit the total time in which the schedule runs.

sched.add_job(job_function, 'interval', hours=2, start_date='2010-10-10 09:30:00', end_date='2014-06-15 11:00:00')

这不是您想要的,但它至少允许设置您可以轻松自行计算的结束日期。

关于python - 我们可以限制APScheduler只运行100次吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40506921/

相关文章:

python - 如何在 AWS 上创建临时安全凭证

python - 如何将ApScheduler日志写入文件?

python - 如何检查 apscheduler 是否在后台运行

python - 安排 SQLAlchemy 清除表中的所有行

python - Pandas 读取科学记数法并改变

python - 检查是否返回结果并分配给变量

python - 如何从字符串中解析timedelta

python - Apscheduler 可以使用相同的 cron 触发器运行两个作业吗?

python - 如何让 Python apscheduler 在后台运行

python - 如何使用xml sax parser读写大的xml?