骆驼计时器 - 堆积的事件

时间:2015-08-18 17:06:55

标签: timer apache-camel

我有一个计时器我在骆驼中进行测试:

<from uri="timer:testTimer?delay=120000&amp;fixedRate=true&amp;period=120000"/>
<inOnly uri="activemq:getTCdata"/>

我看到如果当时正在发生其他事件,事件就会叠加起来。我想知道是否有一种方法可以取消新的计时器事件,如果有一个已经堆叠。虽然这种行为并没有妨碍我所拥有的流程中的任何事情,但我还是没有堆叠的计时器事件全部在泡沫点同时运行。我看了骆驼计时器文档,并没有为此目的找到任何东西。我知道这也是骆驼定时器所基于的Java定时器的行为。我想检查是否有人知道骆驼的解决方案?提前谢谢。

1 个答案:

答案 0 :(得分:1)

请参阅fixedRate选项 http://camel.apache.org/timer

它是JDK计时器api的选项,所以你也可以在那里找到更多关于它的细节。但是将其设置为true意味着新任务仅在当前任务完成时安排,因此它们总是以固定的X周期运行。