当我从apsheduler中删除一个作业然后添加另一个具有相同作业ID的作业时,我遇到我的作业被执行了两次。
if sched.get_job(str(id)) is not None:
if schedule=='minutely':
sched.modify_job(str(id), lambda: seedset_harvest(id),id=str(id), trigger='cron', minute='*/1', start_date=s, end_date=e)
else:
if schedule=='minutely':
sched.add_job(lambda: seedset_harvest(id),id=str(id), trigger='cron', minute='*/1', start_date=s, end_date=e)
我想在这里每分钟安排一份工作。如果作业不存在,我可以正确安排我的工作,但如果它存在,则每次触发(在这种情况下每分钟)执行两次作业。
这里我试图检查具有给定id的作业是否存在,如果确实存在,那么我正在修改它。我正在使用modify_job(id, **changes)。只有在这种情况下,作业才会执行两次。
如果有人能说出这里的代码有什么问题,我将不胜感激。
如果我提供的信息不足,请告诉我,我将编辑我的帖子。
注意:sched是我的牧羊人。