gpt4 book ai didi

java - 管理 quartz 作业、删除

转载 作者:行者123 更新时间:2023-12-01 14:36:45 24 4
gpt4 key购买 nike

考虑以下事件序列。使用 quartz 1.8.0

    <dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>1.8.0</version>
</dependency>

我安排了一个将来执行的作业

     job.setGroup(MY_GROUP);
Date date = scheduler.scheduleJob(job, trigger); // Valid date received

作业按预期执行。

然后我尝试通过运行来删除该作业

     boolean unscheduled = scheduler.deleteJob(event.getName(), MY_GROUP); // Always false

尝试删除作业始终会导致**false**

如果我让应用程序运行超过它计划执行的时间,在删除它失败后,它......不会运行(就像删除成功一样)

什么可以解释这种行为?我如何知道作为组的一部分在quartz中安排了什么?

编辑:

触发器设置为:

        SimpleTrigger trigger = new SimpleTrigger();
trigger.setStartTime(new Date(event.getStartTime().inMillis()));
trigger.setName("trigger" + event.getTriggerName());
trigger.setRepeatInterval(event.getFrequency());
trigger.setRepeatCount(SimpleTrigger.REPEAT_INDEFINITELY);

最佳答案

您使用什么触发器?如果您没有指定触发器应多次触发,例如在一个循环间隔内,那么它只会触发一次,然后被丢弃;如果您的作业详细信息不持久,那么一旦没有更多触发器指向它,调度程序就会自动将其删除。

关于java - 管理 quartz 作业、删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16424864/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com