如何清楚地說明序列圖或類似圖中的多個執行線程?如何在序列圖中說明多個線程?
我一直沒有找到任何明確的例子。我看到的所有圖表都用於說明單個線程。
更新:接受的答案是我看到的最好的例子,但它確實很不理想公平位。我結束了在單獨的序列圖中說明線程。我不確定序列圖是否適用於多個線程。
如何清楚地說明序列圖或類似圖中的多個執行線程?如何在序列圖中說明多個線程?
我一直沒有找到任何明確的例子。我看到的所有圖表都用於說明單個線程。
更新:接受的答案是我看到的最好的例子,但它確實很不理想公平位。我結束了在單獨的序列圖中說明線程。我不確定序列圖是否適用於多個線程。
這裏有一個圖表,可能是有用的,並在左側可以看到的解釋: http://sdedit.sourceforge.net/multithreading/example/index.html
我看到了。不錯,但是當我讀它時確實讓我有點頭暈;) – 2009-10-29 14:06:18
處理多線程會有點令人生畏,因爲使用線程的部分原因是它們是自治的。你可能想把相關的線程一起做成單獨的程序。因此,線程1(控制器線程)啓動,產生3個線程,它們處理並向控制器報告。然後,這些將在一個序列圖中。可能有20個其他線程被忽略,但這很好,因爲他們正在做其他不相關的任務。 – 2009-10-29 14:21:53
您可能感興趣的Message Sequence Charts,或MSC。
Here是一張描述MSC的幻燈片。
有圖表示例的鏈接嗎? – 2009-10-29 14:07:02
我編輯了我的答案,鏈接到示例圖。 – mouviciel 2009-10-29 14:10:48
我看不到多個線程。我必須需要更多的咖啡因。 – 2009-10-29 14:25:14
您可以使用「par」片段爲並行執行的多個同步調用建模。該片段由一個標籤爲「par」的矩形組成。該矩形被分成多個框,每個框代表一個執行線程。
給出一個例子此頁上: http://www.ibm.com/developerworks/rational/library/3101.html#N10227
你應該在你的回答中展示一個例子。由於你的鏈接可能會下降...... – 2014-03-06 11:15:52
@PhilipG當前選擇的答案在這方面更糟 – 2014-07-31 16:14:42
如果調用只需產生一個線程並立即返回,則這不起作用。 – LuckyLikey 2015-07-02 11:22:27
這是sihaya的答案的重複,但詳細介紹瞭如何使用網絡上的工具和不會消失的視覺示例來實現它。
UML序列圖方法是使用「par」片段來模擬多個並行處理的消息。以下是一段文字說明,當您輸入網絡上的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 2012-08-06 19:23:05