Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 石英熔凝_Java_Unix_Jakarta Ee_Cron_Quartz Scheduler - Fatal编程技术网

Java 石英熔凝

Java 石英熔凝,java,unix,jakarta-ee,cron,quartz-scheduler,Java,Unix,Jakarta Ee,Cron,Quartz Scheduler,您好,我在工作时意识到石英有一点。假设一个cron被设置为每2分钟唤醒一次,其表达式为0 0/2*** 当您在13:10:30运行项目时,第一个动作发生在13:12:00,第二个动作发生在13:14:00,其余的每2分钟0秒。显然,从项目启动到第一次行动发生之间只有1分钟:30秒 有没有办法让第一次发生的事件遵守2分钟,无论项目在哪一秒开始?Quartz可以使用cron进行调度,它基于日期和时间,而不是持续时间。这意味着您定义的cron表达式与计算机上的当前时间直接相关,而不是与应用程序启动时的

您好,我在工作时意识到石英有一点。假设一个cron被设置为每2分钟唤醒一次,其表达式为
0 0/2***

当您在13:10:30运行项目时,第一个动作发生在13:12:00,第二个动作发生在13:14:00,其余的每2分钟0秒。显然,从项目启动到第一次行动发生之间只有1分钟:30秒


有没有办法让第一次发生的事件遵守2分钟,无论项目在哪一秒开始?

Quartz可以使用cron进行调度,它基于日期和时间,而不是持续时间。这意味着您定义的cron表达式与计算机上的当前时间直接相关,而不是与应用程序启动时的时间相关

我不知道石英配置可以帮助您解决问题。但是,解决方案是创建自己的
线程
,该线程在应用程序启动期间启动,基本上在调用方法之前等待2分钟:

while (running) {
    Thread.sleep(1000 * 120);
    doStuff();
}

Quartz可以使用cron进行调度,它基于日期和时间,而不是持续时间。这意味着您定义的cron表达式与计算机上的当前时间直接相关,而不是与应用程序启动时的时间相关

我不知道石英配置可以帮助您解决问题。但是,解决方案是创建自己的
线程
,该线程在应用程序启动期间启动,基本上在调用方法之前等待2分钟:

while (running) {
    Thread.sleep(1000 * 120);
    doStuff();
}

Cron作业在Quartz中使用
CronTrigger
类进行配置。另一种方法是使用
SimpleTrigger
,您可以使用固定的延迟间隔来构造它
SimpleTrigger
具有各种构造函数,允许您指定开始时间、结束时间、重复次数、重复间隔等


话虽如此,我还是建议不要在这种调度中使用Quartz,而是使用
java.util.concurrent.Executors.newScheduledThreadPool()
。当涉及到简单的重复任务时,它比Quartz容易得多。

Cron作业在Quartz中使用
CronTrigger
类进行配置。另一种方法是使用
SimpleTrigger
,您可以使用固定的延迟间隔来构造它
SimpleTrigger
具有各种构造函数,允许您指定开始时间、结束时间、重复次数、重复间隔等


话虽如此,我还是建议不要在这种调度中使用Quartz,而是使用
java.util.concurrent.Executors.newScheduledThreadPool()
。当涉及到简单的重复任务时,它比石英要容易得多。

伙计,你刚刚给了我一个主意!谢谢,但我会在正确的方法上挖掘更多。石英不是基于cron的。它支持语法,但不需要。伙计,你刚刚给了我一个主意!谢谢,但我会在正确的方法上挖掘更多。石英不是基于cron的。它支持语法,但不需要它。