| 相互作用操作子 | 説明 |
|---|---|
| 代替 (alt) | 代替 (alt) 相互作用操作子は、if-then-else ステートメントと等価であるロジックを表します。 提供された代替選択肢のいずれかのみが、その相互作用を経由する任意のパスで実行されます。 ただし、他のオペランドと同様に、代替構造体内の選択されたオペランドは、 ガード条件が true と評価された場合にのみ実行されます。 ガードがない場合は、オペランドは選択されると常に実行されます。 代替結合フラグメントの else 節は、その他のオプションが選択されない場合に実行されます。 |
| オプション (opt) | オプション (opt) 相互作用操作子は、if ステートメントと等価であるロジックを表します。 実行するには、ガード条件を満たす必要があります。ガード条件が失敗すると、その振る舞いは無視されます。 オプション結合フラグメントのグラフィック表記は、1 つの選択肢のみを提供する代替のように表されます。 |
| Loop | ループ (loop) 相互作用操作子は、相互作用フラグメントが繰り返し実行されるよう指示します。 そのフラグメントが実行される回数は、演算子の minint パラメーターおよび maxint パラメーターによって決まります。 loop 演算子の構文は、loop (minint, maxint) のようになります。maxint には無限大 (*) にすることもできます。 最小反復回数を経過すると、ブール式が各パスでテストされます。 ブール式が false とテストされると、そのループは終了します。 |
| 並列 (par) | 並列相互作用操作は、相互作用フラグメントが並列で同時に実行されることを示します。 |
| クリティカル領域 (critical) | クリティカル領域操作子は、フラグメントには、そのフラグメントを実行するスレッドが常に 1 つしかないことを示します。 フラグメントが終了しなければ、別のスレッドを実行することはできません。 例えば、操作 d() がクリティカル領域内にある場合に呼び出されると、 d() が終了するまで、他の操作を呼び出すことはできません。 |
| 負 (neg) | 負の相互作用操作子は、発生が認められていない無効の相互作用を示します。 |
| 中断 | 中断相互作用操作子は、他のプログラミング言語の中断メカニズムと同じです。 ガード条件が true の場合、現在の相互作用の実行が中止されて、中断相互作用オペランド内の節が実行されます。 |
| 強シーケンス (strict) | strict 相互作用操作子は、相互作用フラグメントの実行順序を明示的に定義します。 strict 操作子は、ネストされた相互作用または追加相互作用を実行する前に、 相互作用を強制的に終了します。 |
| 弱シーケンス (seq) | 弱シーケンス相互作用操作子は、相互作用の配置に基づいて、フラグメント内の相互作用に順序を追加します。 順序付けは、UML 2.0 の仕様に基づきます。弱シーケンスでは、 部分的な並列実行を行うことができますが、 同じライフライン上のイベントの順序は、別の相互作用から制御されます。 |
| 無効 | 無効相互作用操作子は、相互作用フラグメントが応答する必要がないメッセージを示します。 通常、無効操作子は、有効操作子とペアで使用されます。 |
| 有効 | 有効相互作用操作子は、相互作用フラグメントが応答する必要があるメッセージを示します。 通常、有効操作子は、無効操作子とペアで使用されます。 |
| 表明 | 表明相互作用操作子は、相互作用オペランドが相互作用フラグメント内の次のシーケンスであることを示します。 |