Как запустить несколько процессов в Drools Flow? - PullRequest
0 голосов
/ 25 августа 2009

Я хочу запустить несколько процессов Drools Flow, но этот код блокирует:

ksession.startProcess( "com.sample.ruleflow" );

Как я могу это сделать?

1 Ответ

0 голосов
/ 02 октября 2009

StatefulKnowledgeSession.startProcess() блокируется только при достижении состояния ожидания.

Если вы хотите, чтобы процесс выполнялся полностью асинхронно, вам необходимо вызвать startProcess() из другого потока.

Однако при очень простом процессе (без возможных состояний ожидания) вполне вероятно, что он начнется и закончится до того, как следующая строка кода будет выполнена в текущем потоке, создавая впечатление блокирующего поведения, где на самом деле есть доли не имеет.

...