Я хочу реализовать этот вариант использования, у меня 3 потока,
<split id="split1" task-executor="taskExecutor">
<flow>
<step id="step1" parent="s1" next="step2"/>
<step id="step2" parent="s2"/>
</flow>
<flow>
<step id="step3" parent="s3"/>
</flow>
<flow>
<step id="step4" parent="s4"/>
</flow>
<flow>
<step id="step5" parent="s5"/>
</flow>
</split>
<split id="split2" task-executor="taskExecutor">
<flow>
<step id="step6" parent="s6"/>
<step id="step7" parent="s7"/>
</flow>
<flow>
<step id="step8" parent="s8"/>
</flow>
</split>
<split id="split3" task-executor="taskExecutor">
<flow>
<step id="step9" parent="s9"/>
<step id="step10" parent="s10"/>
<split id="split3_1" task-executor="taskExecutor">
<flow>
<step id="step11" parent="s11"/>
</flow>
<flow>
<step id="step12" parent="s12"/>
</flow>
</split>
</flow>
</split>
В split1 есть 4 потока, которые должны работать параллельно. После завершения step2 и step3 он должен запустить split2 и не должен ждать step4 и step5 в split1.
Точно так же, если шаги step4 и step 5 завершены, он должен запустить выполнение split3, не дожидаясь завершения step2 и step3.
Также возможно добавить шаги и разделить поток вместе, например. в приведенном выше разделе split3 я хочу, чтобы step9 и step10 выполнялись в обязательном порядке, а затем выполнялись step11 и step12 параллельно.
Как я могу настроить этот вариант использования? Могут ли разбиения быть вложенными?