[rules-users] Starting engine using fireUntilHalt and inserting no facts results in 50% CPU usage
Norman C
rent_my_time at yahoo.com
Mon Oct 25 14:53:57 EDT 2010
Note that the 100% CPU issue with fireUntiHalt is only with the 5.1 version of
Drools. In 5.0.x, CPU is close to 0% when there are no rules to fire. I saw
this when I was testing upgrading to 5.1.
Norman
----- Original Message ----
From: jschmied <nabble at juergenschmied.de>
To: rules-users at lists.jboss.org
Sent: Sun, October 24, 2010 4:06:02 AM
Subject: Re: [rules-users] Starting engine using fireUntilHalt and inserting no
facts results in 50% CPU usage
Hi!
fireUntilHalt uses one processor with 100%. You have a dualcore, so it's
50%. It's by design like this.
You can:
- Call fireAllRules after every insert if you have no ruleflow.
- Use fireAllRules in a loop with a small sleep and check for the end of the
ruleflow in the loop:
while (prc.getState() == ProcessInstance.STATE_ACTIVE) {
Threads.sleep(20);
ksession.fireAllRules();
}
with both methods you get a low cpu load.
bye
juergen
--
View this message in context:
http://drools-java-rules-engine.46999.n3.nabble.com/Starting-engine-using-fireUntilHalt-and-inserting-no-facts-results-in-50-CPU-usage-tp1760370p1761821.html
Sent from the Drools - User mailing list archive at Nabble.com.
_______________________________________________
rules-users mailing list
rules-users at lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
More information about the rules-users
mailing list