我想爲多線程應用行爲建模。有很多同步(ManualResetEvents等)。我試圖使用序列圖,但它似乎缺乏方便的同步可視化。那麼,我必須使用哪種圖表來完成這類任務?如何可視化多線程進程?
3
A
回答
5
我一直在同時使用UML活動圖和diagrams in this article
編輯
分享了一些經驗:不要指望這些圖表來解決所有的設計問題多線程。出於同樣的原因,多線程系統的單元測試很難,繪製圖也是如此。例如,看看6.45中提到的圖表.Vapuru的回答。是的,它顯示了圖層的併發執行,這將幫助您查明潛在的錯誤,但試圖顯示此圖表在嘗試顯示網站的多個併發客戶端時的外觀。它變得非常迅速。我並不是說它不能完成,但是可能的變化數量非常巨大,以至於需要付出很大的努力才能實現。
這是一個很好的例子,可以幫助您理解爲什麼多線程很難。如果你不能繪製它,你可能不會完全掌握它的複雜性,你將無法測試它,並且你總會有那種嘮叨的感覺,你忘記了一些東西。
這就是爲什麼我希望在平臺和語言上設置這些問題,以解決這些問題,但我們還沒有到位。
1
如果要調查,而他們彼此有時間限制短信的關鍵對象的狀態的變化,你可以使用UML 2 時序圖
可以檢查http://www.uml-diagrams.org/timing-diagrams-examples.html網站簡單的例子時序圖[網站延遲]
0
相關問題
- 1. 多線程可視化c的問題#
- 2. 可視化多線程日誌
- 3. 如何可視化長對話線程?
- 4. java如何處理多線程?比進程更多的線程
- 5. Python多線程:如何讓守護進程線程運行
- 6. 多線程或線程進程
- 7. 進程阻塞如何應用於多線程進程?
- 8. 如何在MATLAB中進行線程化?
- 9. 如何在python中進行線程化?
- 10. 執行多線程進程
- 11. 線程安全多進程
- 12. 線程還是多進程?
- 13. Grails和多線程進程
- 14. 進行跨線程調用以隱藏窗體可視化c#
- 15. 優化吞吐量:多線程與多進程
- 16. 如何允許多線程進程使用盡可能多的資源作爲多個進程
- 17. Java多線程渲染,如何優化
- 18. 如何進行多線程計算Android
- 19. 可視化多線程C++應用程序調用圖,多線程代碼覆蓋率的工具?
- 20. 如何在python中使用多線程單進程控制多個進程?
- 21. 如何使用多線程進行視頻下載?
- 22. 程序可視化
- 23. 從多進程到多線程
- 24. Arduino Uno,多進程,多線程
- 25. 多線程/多進程窗口服務
- 26. Windows,多進程vs多線程
- 27. 如何可視化工作流程?
- 28. 如何可視化存儲過程
- 29. 如何用gdb調試多線程/進程應用程序?
- 30. 多線程程序和os進程
我給我的文章添加了一些經驗。 –