2017-09-12 1 views
0

自分のプロセスで並列実行サービスタスクを作成する必要があります。私はactiviti.xml設定で、このプロパティを追加するために必要なのことがわかっwso2bps 3.6.0非同期タスク

(例えば)5 =ループカーディナリティで

enter image description here

は、非同期プロパティの使用量と、最も単純なフローを作成してみます

<property name="asyncExecutorActivate" value="true" /> 

フローはまだ1つのスレッドで実行されます。

何が欠けていますか?

正しく非同期をアクティブにする方法はありますか?

答えて

1
  1. 上記の例では非同期並列実行有効にする - とすぐに私たちはasyncを使用して、我々は

    asyncを指定するために、プロセスエンジンを設定する必要がSub Process

  2. Call Serviceないで非同期を設定する必要が

    そうでなければ、例外のこの王様:

    org.activiti.engine.ActivitiOptimisticLockingException:ちょうどconf/activiti.xml

    :VariableInstanceEntity [ID = 15317、名称= nrOfActiveInstances、タイプ=整数、のlongValue = 1、textValue = 1]別のトランザクションによってここに格納wso2bpsにactivitiエンジンの並行

    パラメータを更新されました豆ID =「processEngineConfiguration」

    <bean id="processEngineConfiguration" class="org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration"> 
        ... 
        <property name="asyncExecutorActivate" value="true" /> 
        <property name="asyncExecutorEnabled" value="true" /> 
        ... 
    </bean> 
    
    が警告に次のプロパティを追加します。それは機能やバグだかどうかを知りません。 サブプロセスは、あなたが...サブプロセスのend eventsにそれらの変更後の

asyncを設定した場合にのみ、質問からプロセスがマルチスレッドモードで素晴らしい作品が正しく、すべてのスレッドの終末をキャッチします。