我需要根据我的调度程序作业在收到来自其他组件的jms消息后每5秒运行一次的约束来启动spring调度。 实现/处理这种情况的可能方法是什么,用Google搜索相同但解决方案要求我在属性文件中有一个属性,用于启用调度,这也是静态方法。
请提出一些解决方案。
答案 0 :(得分:1)
您可以使用: -
收到来自JMS队列的消息后,Thread.sleep(long delay),即Thread.sleep(300000);
基本上,您的问题与调度程序无关。从队列接收的消息是在您的情况下调用作业的触发器。
而计划任务是根据fixed delay或fixed interval或specific time定期重复的任务。
你的工作是基于事件的,而不是基于时间的,所以它不是预定的 工作