WF 4 を使用して、既存のワークフロー ソリューションを置き換えたいと考えています。既存のワークフロー エンジンで現在使用されている機能の 1 つは、現在のアクティビティをキャンセルし、FlowSwitch タイプのアクティビティにループバックする機能です。
したがって、「O」から開始して入力データをベースとする次の大まかなワークフローを考えると、ワークフローは、入力を待っているブックマークで現在ブロックされている「A2」へのパスをたどります。
---------A1--\
| \
/\ \
O------- ---->--(A2)-------|
^ \/ / |
| | / |
| ---------A3--/ |
| |
|----------------------|
ただし、その間に一部の帯域外データが入ってくるため、「A2」をキャンセルして FlowSwitch に戻り、新しいデータに基づいて再評価する必要があります。問題は、受信した帯域外データを処理する最善の方法は何かということです。
私の最初の推測では、1 つのブランチが帯域外データを待機し、もう 1 つのブランチが上記のワークフロー シーケンスを含む Parallel アクティビティを持つことです。帯域外データを待っているブランチにデータが入ってきた場合、ワークフローの現在のアクティビティをキャンセルして、強制的に FlowSwitch に戻すにはどうすればよいでしょうか。またはもちろん、これを処理するより良い方法があります。
私は実際には WF3 用の WF4 の作業を行っていないので、ここで明らかな何かが欠けている可能性があります。