Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

複数のイニシエーターをもつ Function-Call Subsystem

この例では、Mux ブロックでグループ化された複数の異なる関数呼び出しイニシエーターによって呼び出される Function-Call Subsystem を示します。

モデル例 FunctionCallSubsystemMultipleInitiators を開きます。

モデルには、関数呼び出し入力端子で Mux 信号を受け取る Function-Call Subsystem f が含まれています。Mux ブロックは、Stateflow チャート Chart1 および Chart2 からの関数呼び出し信号を Mux 信号にグループ化します。

Chart1 の端子 [out1]Chart2 の端子 [d1] 間のデータ接続により、Chart1Chart2 より前に実行されることが保証されます。

複数の呼び出し元をもつ Function-Call Subsystem を作成する際には、"f()" を呼び出す各チャートの相対実行順序を明確に定義します。たとえば、Chart1Chart2 間のデータ接続を削除した場合、優先順位を Chart1Chart2 に追加して、これらのチャートの相対実行順序を指定します。

あいまいさがある場合でも、特定のケースでは有効である可能性があるため、エラーは発生しません。たとえば、サブシステム f からすべてのステートを削除し、Chart1[out1] から Chart2[d1] へのラインを削除した場合、Chart1Chart2 が実行される順序は重要ではなくなります。

参考

関連するトピック