Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/311.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 - Fatal编程技术网

Java 在一定时间内开始一项任务

Java 在一定时间内开始一项任务,java,Java,为了每5分钟执行一项任务,我使用以下代码 this.timer.schedule(new Send(), new Date(), TEN_SECONDS*6*5); 我的问题是,我如何在这种时间内开始我的任务:xx:00,xx:05,xx:10,xx:15-在5分钟的跳跃中,所以我想从最近的5分钟跳跃开始我的任务。您可以使用quartz 它是开源的,具有类似cron的功能 这不是那么难,真正简单的数学 d1.setMinutes(d1.getMinutes() + 5 - d1.getMinu

为了每5分钟执行一项任务,我使用以下代码

this.timer.schedule(new Send(), new Date(), TEN_SECONDS*6*5);
我的问题是,我如何在这种时间内开始我的任务:xx:00,xx:05,xx:10,xx:15-在5分钟的跳跃中,所以我想从最近的5分钟跳跃开始我的任务。

您可以使用quartz

它是开源的,具有类似cron的功能


这不是那么难,真正简单的数学

d1.setMinutes(d1.getMinutes() + 5 - d1.getMinutes()%5);

看起来是一个很好的解决方案,但我不能通过一些数学计算来实现吗?可行,但它需要更多的自定义编码来确定您想要的5跳转。类似于12:09的内容需要的内容超过d1.setMinutes(d1.getMinutes()+5-d1.getMinutes()%5);为什么呢?9+5-4=10你说得对。。。我的上一篇文章不清楚(我没有写完整)。。。我说的是,如果你有12:09:59:999,当你计算并设置计时器时,你可能已经超过12:10:00:000了。我没有意识到,如果日期参数是过去的,计时器将立即运行。