当前位置: 首页 > 知识库问答 >
问题:

在Quartz调度程序中使用@DisallowConcurrentExecution

向苗宣
2023-03-14

如果这个问题太幼稚,我很抱歉,我希望作业被安排成一个一个地执行,而不是并行地执行,它只执行一次。

在文档中,@disallowConcurrentExecution是

    null

PS:我不知道会安排哪些工作。因此,如果作业已经在运行,我需要一些方法来动态链接作业。

共有1个答案

晏沈义
2023-03-14

相同jobkey=相同的作业。
differencejobkey=不同的作业。

Quartz不允许您多次使用相同的jobkey,因为这将是两个具有相同密钥的作业。比如拥有两个具有相同ID的用户。

您需要做的是为相同的jobkey安排不同的jobtrigger

我建议看一看Quartz的文档,以更深入地理解上述概念。

 类似资料:
  • 我使用Quartz Scheduler(使用JobDetailFactoryBean)和Spring来安排一些作业。现在我通过XmlApplicationContext通过spring配置实现了这一点,我必须将其更改为AnnotationConfigApplicationContext。那么,我如何在AnnotationConfigApplicationContext中实现这个cronjob呢。这

  • 我有使用Spring的石英作业实现。我的调度程序工作正常,作业执行完美。我的问题是如何将此调度程序置于待机状态?这样一旦我决定将调度程序置于待机模式,就不会触发任何作业。下面是作业类 来自applicationContext_调度程序的代码片段。xml

  • 问题内容: 请考虑这个例子。 一个示例Web应用程序要求其启动。调度程序配置为将其作业存储在DB中。 该应用程序被复制到六个Web服务器上。 因此,如果我们启动六个Web服务器,则在单个DB上将有六个具有相同名称的调度程序。如https://quartz- scheduler.org/documentation/quartz-2.1.x/cookbook/MultipleSchedulers中所述

  • 我们有一个使用Spring Framework在Tomcat中运行的Web应用程序。我们需要为循环操作添加一些计划作业。为此,我们遇到了Quartz Scheduler,并遵循了使用Quartz with Spring配置作业的教程,并按预期计划并运行了作业。 所以我们有一些任务是在应用程序启动时安排的。现在我们希望用户手动运行作业并更改作业的触发器,但是我们需要将这些更改持久化到数据库中。因此,

  • 问题内容: 我计划使用Quartz调度程序,因为我阅读了很多好的意见。 我的问题如下:在任何给定时间,系统中都会存在成千上万的触发器。大多数触发器将仅触发一个事件并死亡。另外,很有可能我将不得不在分配许多作业后取消它们(基于新的输入)。 石英可以缩放吗?推荐哪个JobStore?我计划在mysql上使用JDBC。 附加信息 :我的工作将发送电子邮件或通过HTTP发布将数据发布到其他服务(通过WAN

  • 相关: 我觉得我错过了什么?