並行状態のシミュレーション

<< 目次を表示 >>

ページ位置:  シミュレーション > 振る舞いモデルのシミュレーション >

並行状態のシミュレーション

状態要素内の並行状態は、その状態の中において並行的に状態変化や処理が行われることを示します。このような並行状態で、片方の区画での状態変化によりイベントが発生し、その結果別の区画の状態遷移に影響を与えるようなシミュレーションを行うこともできます。例えば、片方の区画でタイマーが動作し、もう片方の区画でそのタイマーによって状態変化が発生するような場合が考えられます。

 

シミュレーションとしては、並行状態はフォーク・ジョイン要素を利用してマルチスレッドを実現する方法と同じです。
(ステートマシン図のマルチスレッドの場合には、下記のように区画を利用するか、あるいは状態マシン要素内にステートマシン図を作成し、フォーク・ジョイン要素から分岐する際の分岐先として状態マシン要素を指定する必要があります。)

 

下の例では、以下の内容となっています。

 

 

注意:

並行状態が定義されている場合に、外部の状態から並行状態内の要素に直接遷移する内容は、正常にシミュレーション実行できません。外部の状態からは、必ず並行状態が定義されている親要素に遷移するようにして下さい。