我有一个需要在特定日期运行的线程可以说它是每月的第一个日期。由于我们从开始使用Akka调度程序,所以我只想知道我们是否可以通过Akka来做到这一点(石英调度程序可以很容易地解决这个问题。)在Akka Scheduler的特定日期安排JOB
我可以在Akka调度程序调度函数中看到,我们需要还要在参数中传递重启时间。但重启时间在这个特定的日期并不相同,因为有些月份是30天,31天等。 因此,我的调度程序在每次重启时间结束后都会运行。
Cron Expression: cron_expression=0 0 06 1 * ?
restart_time =86400 (here it is 24 hours)
Akka.system().scheduler().schedule(validCronExpressionTime, Duration.create(restart, TimeUnit.SECONDS), thread, Akka.system().dispatcher());
这里validCronExpressionTime将根据文件中的cron_expression设置找到有效日期。
在akka调度程序中,第一个arugument只是用于在特定时间启动调度程序,然后在重新启动时重复它。
下面的答案对你有帮助吗? –
嗨,艾米特似乎你的代码将在本月1日运行线程只有一次,但我想在每个月的1日运行它。 –
不,这将在每个月的第一个日期运行,您需要将相同的代码放入您想要在每个第一个日期运行的演员。继续询问是否有其他问题出现。 –