シーケンスダイアグラムまたは同様の図で、複数の実行スレッドを明確に示す方法はありますか?シーケンス図で複数のスレッドを説明するには?
明確な例は見つかりませんでした。私が見るすべての図は、単一のスレッドを示すために使用されています。
更新:受け入れ答えは、私が見た最高の例だったが、それは公平なビットを希望される残しありません。私は別々のシーケンス図でスレッドを説明し終わった。シーケンス図が必ず複数のスレッドで動作するかどうかはわかりません。ここで
シーケンスダイアグラムまたは同様の図で、複数の実行スレッドを明確に示す方法はありますか?シーケンス図で複数のスレッドを説明するには?
明確な例は見つかりませんでした。私が見るすべての図は、単一のスレッドを示すために使用されています。
更新:受け入れ答えは、私が見た最高の例だったが、それは公平なビットを希望される残しありません。私は別々のシーケンス図でスレッドを説明し終わった。シーケンス図が必ず複数のスレッドで動作するかどうかはわかりません。ここで
は有用である可能性がある1つの図であり、左側に、あなたは説明を見ることができます: http://sdedit.sourceforge.net/multithreading/example/index.html
と同じようです。私はそれを読んだときに少しめまいになります;) –
スレッドを使用する理由の一部は自律的であるため、複数のスレッドの処理は少し難しいでしょう。関連するスレッドを別々のプログラムとして実行したい場合があります。したがって、スレッド1(コントローラスレッド)が起動し、3つのスレッドを生成し、処理してコントローラに報告します。そして、これらは1つのシーケンス図になります。他の20のスレッドが無視されているかもしれませんが、他の無関係のタスクを行っているので問題ありません。 –
あなたはMessage Sequence Charts、またはMSCに興味があるかもしれません。
Hereは、一言で言えばMSCを記述するスライドです。
チャートの例とのリンクはありますか? –
サンプルダイアグラムにリンクするために私の答えを編集しました。 – mouviciel
それが複数のスレッドをどのように表しているのか分かりません。私はもっとカフェインが必要です。 –
「par」フラグメントを使用して、並列で実行される複数の同期呼び出しをモデル化することができます。フラグメントは、ラベル「par」を持つ矩形で構成されます。矩形は複数のボックスに分割され、それぞれが実行スレッドを表します。
例は、このページに記載されています。 http://www.ibm.com/developerworks/rational/library/3101.html#N10227
答えにも例を示す必要があります。あなたのリンクがダウンする可能性があるので... –
@PhilipG現在選択されている答えはさらに悪いです。 –
コールが単にスレッドを生成してすぐに戻る必要がある場合、これは機能しません。 – LuckyLikey
これはsihayaの答えの複製ですが、Web上のツールではそれを達成する方法の詳細と、消えない視覚的な例があります。
UMLシーケンスダイアグラムのアプローチは、並列処理される複数のメッセージをモデル化するために「par」フラグメントを使用することです。以下は、Web上のPlantUMLツールに入力すると、下の図が作成されるテキストの説明です。
@startuml
Person -> MicrowaveOven : Cook Food
activate MicrowaveOven
par
MicrowaveOven -> MicrowaveOven : Activate Magnetron
else
MicrowaveOven -> MicrowaveOven : Activate Rotation Motor
end
MicrowaveOven --> Person : Delicious Food
deactivate MicrowaveOven
@enduml
私はそれを見たhttp://stackoverflow.com/questions/954193/is-there-an-inituitive-uml-approach-to-depict-threads – feuGene