标签: java jboss rules drools
我已将Drools实现到我的Java项目中。所有规则都会触发,但条件只会在被解雇后立即检查一次。
这是Drools的表现吗?我需要它不断检查布尔值是否有任何变化。
答案 0 :(得分:2)
这就是前向链规则引擎的行为(非常有效)。
如果您的事实发生了变化(所以如果它的布尔属性/方法的结果发生变化),则应workingMemory.updated(fact, factHandle)通知规则引擎。然后,规则引擎将触发所有需要根据该更改触发的规则(而不是更多的规则)。
workingMemory.updated(fact, factHandle)
Here's a diagram to explain why this can make your app a lot more scalable because it has to run a lot less code.