第10章 非同期の続行

10.1. コンセプト

JBPM は グラフ指向プログラミング (GOP) に基づいています。基本的に、GOP は並列実行パスを扱える単純な状態マシンを指定できます。しかし、GOP で指定されている実行アルゴリズムでは、すべての状態遷移は、クライアントのスレッドでひとつの操作によって行われます。デフォルトでは、クライアントのスレッドにおいて状態遷移を行うことは、サーバー側のトランザクションに自然に適合するため、良いアプローチとなります。プロセス実行は、別の待機状態にひとつのトランザクション内で移動します。
状況によっては、 開発者がプロセス定義のトランザクション境界を微調整したいことがあります。 jPDL では、 プロセス実行が属性 async="true" で非同期に続行するよう指定できます。 async="true" は、 イベントでトリガーされ、 すべてのノードタイプとすべてのアクションタイプで指定できる場合のみサポートされます。