システムの問題をデバッグする際に、ボトルネックの原因となっているスレッドの競合を発見しました。この問題を扱う他の人々にこの現象を説明する必要があります。それらのうちのいくつかは開発チームからのものではありません(しかし、それらは合理的に技術的です)。したがって、競合、デッドロックなどのスレッドの問題を表すために使用できるダイアグラムのタイプは何ですか?いくつかの例は非常に便利です。競合などのスレッドの問題を視覚化するのに最適なダイアグラムのタイプは何ですか?
答えて
Doug Lea(Javaでの並行プログラミング)では、スレッドの列に垂直なタイムラインが使用され、その後、 列の行は、任意の時点で状態を取得します。
行の連続は一連のイベントをキャプチャします。
問題の多くは、 の可能な状態変更のさまざまな置換を考慮する必要があるということです。
これらの図のPowerPointアニメーション版があなたの心に留めている視聴者に役立つかどうかは疑問です。
同じように、データグラムレベルでネットワーク通信を示します。
たとえば、スレッドごとに1つのタイムラインを描画し、次にクロススレッド通信は、1つの送信ポイントでこれらのタイムラインを接続し、もう一方の受信ポイントで受信するラインで構成されます。
タイミング図を意味していますか? –
@ジョン - はい、私はそれがそのような図面の人気のある用語であることは知らなかった。 –
@いいえ、ありがとう、ありがとう。あなたが共有できるサンプルがありますか? – akirekadu
ダイアグラムである必要がない場合は、簡単な(冗長な)プログラムを書くことができます。どのような教科書でも同時性/デッドロックの問題を教える方法と同じです。
リソースとスレッド間の依存関係を図式化するのに役立つグラフを待つことができます。
おそらく、UMLのシーケンスダイアグラムが最適です。複数のスレッドを表示するために、各スレッドにはスレッドの開始と終了(終了はバーの下のXです)を示す垂直バーがあります。縦棒の間の矢印はスレッド間でやりとりされるメッセージを示し、矢印はスレッド自体を呼び出しているスレッドを示します。
いくつかの例については、http://www.agilemodeling.com/artifacts/sequenceDiagram.htm
- 1. Kibana - 視覚化で複数のタイプのデータに結合する
- 2. Adobe Flexでチャート/グラフ/データの視覚化を生成する最適な方法は何ですか?
- 3. アンドロイド:カスタムスライダでの視覚的な問題
- 4. Google視覚化スクリプトの問題
- 5. 視覚化:最善のアプローチですか?
- 6. HTMLコードでCSSを視覚化する際の問題
- 7. Watson IoTプラットフォームでヒストリアンデバイスのデータを視覚化する:問題
- 8. 可視化ダイアグラムでZestの選択肢は何ですか?
- 9. オクターブ - 視覚化のためのポイントプロットの最適化
- 10. データ視覚化に最適なツール/プログラミング言語
- 11. オブジェクト状態を視覚化する最良の方法は何ですか?
- 12. オープンソースのcassandraクラスタに最適な監視ソリューションは何ですか?
- 13. ggplot視覚化の質問
- 14. Web上のビデオに最適なMIMEタイプは何ですか?
- 15. ライブウェブサイトのサムネイルを最適化する最適な方法は何ですか?
- 16. リファクタリングの具体的な視覚的な例は何ですか?
- 17. PYSPARK:GraphFrameをどのように視覚化するのですか?
- 18. データベース最適化の問題
- 19. 最適化の問題
- 20. コード最適化の問題
- 21. Google視覚化タイプの不一致
- 22. Excelから調査データをアップロードする際に使用する最適な視覚化ツールですか?
- 23. SeerSuiteとStefanerのRelation Browerなどの視覚化エンジンを統合するのは良い考えですか?
- 24. このDBダイアグラムで何が問題になっていますか?
- 25. SourceTreeのrebaseからの競合を視覚的に解決する方法
- 26. rdtscでのgcc最適化の問題
- 27. andriodのモバイルアプリに最適な自動化ツールは何ですか?
- 28. Angular JSの国際化に最適なアプローチは何ですか?
- 29. QtのQPlainTextウィジェットの生のテキストを視覚化する際の問題
- 30. このグラフィカルな視覚化は正しいですか?
どの言語とプラットフォームですか? Visual Studio 2010 Beta 1には、スレッドのパフォーマンスのデバッグとビジュアライゼーションに関する新機能があります。 –
これはJavaアプリケーションです。しかし、VS 2010上のポインタありがとう。私はそれを確かめるでしょう。 – akirekadu