如何同时启动两个Drools规则?
我需要同时启动两个不同的规则。现在我有一个包含这些规则的drl文件。第一条规则有一个计时器,所以它每分钟运行一次如何同时启动两个Drools规则?,drools,rules,Drools,Rules,我需要同时启动两个不同的规则。现在我有一个包含这些规则的drl文件。第一条规则有一个计时器,所以它每分钟运行一次 rule "periodicCheck" salience 20 timer (cron:0 0/1 * * * ?) when $crisis: CrisisContext() then Date date = new Date(); System.out.println("
rule "periodicCheck"
salience 20
timer (cron:0 0/1 * * * ?)
when
$crisis: CrisisContext()
then
Date date = new Date();
System.out.println("~~~~~~~~~~~~Check File~~~~~~~~~~~~"+date);
end
另一条规则是进行一些可能需要4分钟的计算:
rule "Distance"
when
$event: Event(isNewEvent())
$crisis: CrisisContext()
then
myApp.getDistance($crisisContext);
end
所以,当这个规则运行时,我不知道我的第一个规则是否也在运行
有并行运行吗??是否可以并行运行每个规则
提前感谢
Jesús第一件事:drools不支持规则的并行执行。如果您想要真正的并行执行,您需要在两个不同的线程中有两个不同的ksession。当然,同步这些会话并非易事。我可以问一下,为什么要并行运行它们?也许有其他方法可以解决你的问题。非常感谢,Estaban是的,我正在开发其他解决方案,但我想知道这个解决方案是否可行。我希望同时运行这两个规则的唯一原因是在执行其他任务时检查更改。但这一点我可以用线直接做到:)祝你好运,耶斯!!