Java 立即启动并在时间间隔后运行的cron触发器

Java 立即启动并在时间间隔后运行的cron触发器,java,cron,cron-task,cronexpression,crontrigger,Java,Cron,Cron Task,Cronexpression,Crontrigger,我有一个要求,我正在编写一个实用程序,它要求cron触发器立即启动,然后在30或40分钟的常规间隔后启动。现在我的表情是这样的0/40***?但它会在应用程序启动40分钟后启动触发器。在java中实现上述场景的表达式或编程方式应该是什么 Cron没有每40分钟运行一次作业的功能。事实上,*/40**** 将在每小时的第40分钟运行作业,然后在每小时的第59分钟结束时运行作业,依此类推。作业之间的间隔是40分钟,然后是20分钟,依此类推。原因是60不能除以40 40****将在每小时的第40分钟(

我有一个要求,我正在编写一个实用程序,它要求cron触发器立即启动,然后在30或40分钟的常规间隔后启动。现在我的表情是这样的0/40***?但它会在应用程序启动40分钟后启动触发器。在java中实现上述场景的表达式或编程方式应该是什么

Cron没有每40分钟运行一次作业的功能。事实上,
*/40****
将在每小时的第40分钟运行作业,然后在每小时的第59分钟结束时运行作业,依此类推。作业之间的间隔是40分钟,然后是20分钟,依此类推。原因是60不能除以40

40****
将在每小时的第40分钟(每小时一次)运行作业

另一方面,
*/30****
确实会每30分钟运行一次作业,因为60 mod 30=0

如果确实希望每40分钟运行一次作业,则可能需要使用更高级的调度程序,例如fcron()。该调度器确实支持该功能和其他一些很酷的功能


在回答关于立即触发作业的问题时,我建议在下一分钟对作业进行编程,并在脚本中维护一个计数器,并且只允许脚本运行一次。执行is脚本后,它可以智能地将自身从cron中删除。

cron没有每40分钟运行一次作业的功能。事实上,
*/40****
将在每小时的第40分钟运行作业,然后在每小时的第59分钟结束时运行作业,依此类推。作业之间的间隔是40分钟,然后是20分钟,依此类推。原因是60不能除以40

40****
将在每小时的第40分钟(每小时一次)运行作业

另一方面,
*/30****
确实会每30分钟运行一次作业,因为60 mod 30=0

如果确实希望每40分钟运行一次作业,则可能需要使用更高级的调度程序,例如fcron()。该调度器确实支持该功能和其他一些很酷的功能


在回答关于立即触发作业的问题时,我建议在下一分钟对作业进行编程,并在脚本中维护一个计数器,并且只允许脚本运行一次。执行is脚本后,它可以智能地将自身从cron中删除。

您可以设置一个cron,使其按您想要的方式运行。您只需要获取当前时刻,并将cron设置为在该时刻开始启动。因此,如果您想让cron在每小时的20分钟启动,每30分钟运行一次,您可以设置如下内容:

20-59/30****


这意味着cron将在一小时的第20分钟启动,然后在30分钟后再次启动(因此,在第50分钟启动)。

您可以设置cron以您想要的方式运行。您只需要获取当前时刻,并将cron设置为在该时刻开始启动。因此,如果您想让cron在每小时的20分钟启动,每30分钟运行一次,您可以设置如下内容:

20-59/30****

这意味着cron将在一小时中的第20分钟启动,然后在30分钟后再次启动(因此,在第50分钟)