2011年4月6日水曜日

Pick アクティビティ

処理の分岐を行うという点では Switch に近い部分もあるのが Pick アクティビティです。Switch アクティビティとの違いは Switch アクティビティは「値による分岐」を行うのに対し、Pick アクティビティは「他アクティビティ実行結果による分岐」を行う点が異なります。

これだけだとイメージしにくいので実例を。

WF4-1

Pick アクティビティをドロップするとデフォルトでは内部に分岐(PickBranch アクティビティ)を二つもつ形になります。この分岐自体は Pick アクティビティに対して PickBranch アクティビティを追加する事で増やすことが可能です。

今回のサンプルは

  • DelayActivity で 3 秒待機 → DIsplayActivity で文言表示
  • DelayActivity で 5 秒待機 → DisplayActivityで 文言表示

という形です。Pick アクティビティの分岐は「他アクティビティ実行結果による分岐」ですので、まずは Pick アクティビティ内部の PickBranch アクティビティに設定されているトリガーにあるアクティビティが実行されます。この実行は各 PickBranch アクティビティが同時に行われます。今回の例では DelayActivity で 3 秒待機と 5 秒待機が同時に実行されることになります。

先に終了するのは 3 秒待機の DelayActivity となりますので、そちら側の PickBranch アクティビティが有効になりアクションに設定されているアクティビティが実行されることになります。5 秒待機側の PickBranch アクティビティのトリガーは実行されません。

Pick アクティビティはこのような形で動作します。

0 件のコメント:

コメントを投稿