2

我正在尝试ScheduleExpression并注意到一个奇怪的行为:

如果我每 30 秒创建一个计时器

scheduleExpression.second("*/30");

我明白了

[second=*/30;minute=*;hour=*;dayOfMonth=*;month=*;dayOfWeek=*;year=*;timezoneID=null;start=null;end=null]

我的计时器按预期每 30 秒(在 :00 和 :30)执行一次。到目前为止,一切都很好。

然后我尝试用分钟做同样的事情

scheduleExpression.minute("*/1");

正如预期的那样,我得到了

[second=*;minute=*/1;hour=*;dayOfMonth=*;month=*;dayOfWeek=*;year=*;timezoneID=null;start=null;end=null]

但我的@Timeout方法被连续调用。代码完全一样,我只是在更改ScheduleExpression.

这是一个已知问题吗?还是我误解了文档,我必须同时设置

scheduleExpression.second(0);
scheduleExpression.minute("*/1");
4

1 回答 1

4

ScheduleExpression 文档看来,您应该调用这两种方法(特别是如果您之前安排seconds过)。

看这个:

Example : ( minute = "∗/14", hour="1,2")

他们同时设置minuteshours

于 2013-01-17T08:24:27.790 回答