我是Drools的新手,并从基础开始。这是一个设置;
session.setFocus
)我插入了这个事实(我注意到其他议程组中的规则正在进行评估,即使重点不在于它们)
我fireAllRules()
不应该触发与重点关注的特定议程小组有关的规则而不是所有小组的所有规则吗?
答案 0 :(得分:1)
这是许多基于规则的系统中的基本规律 - 尤其是那些遵循Rete或类似算法的系统 - 评估的条件(“t
每当工作记忆中有更改时,就会发生“,”左侧“),插入,更新或删除。相反,规则触发或执行后果(”然后“,”右侧“)在fireAllRules
或fireUntilHalt
被调用后发生。
规则的触发 - 更确切地说:规则的激活 - 可以通过多种方式进行控制。在这里,确实是专注的议程小组,限制了引擎可以执行的内容。
请记住:评估不等于执行。