0

コードの現在の実行状況を表示するツールはありますか? WPF アプリケーションの UI が通知や例外なしでハングしているため、これが必要です。問題をデバッグできません。システムはアイドル状態のままで、プロセスを明示的に強制終了する必要があるたびに。助言がありますか。参考までに..多くのサードパーティのツールが使用されています。

4

3 に答える 3

2

私はあなたがすでに何をテストしたかわかりません、そして多分私は答えが無効ですが:

VisualStudioで一時停止機能を使用してみましたか。アプリケーションのすべてのスレッドを一時停止し、スレッドごとに一時停止されている場所を確認できます。また、各スレッドをステップスルーして、考えられる問題を見つけることもできます。

私が過去に持っていたいくつかの問題:

  • UIスレッドからすぐに実行されたアクションが多すぎます
    • を使用して、大量の作業をバックグラウンドスレッドにディスパッチします。BackgroundWorker
  • UIスレッドが必要な情報を収集できないように、ロックモデルが正しくありません
    • プロパティをロックせずに、ViewModelのデータをバックグラウンドスレッドで変更できないようにしてください。

WPFとマルチスレッドについて読むためのいくつかの興味深いリンク:

うまくいけば、これはあなたに少し役立つでしょう

于 2012-06-19T09:35:00.183 に答える
1

windbg を使用して、プロセスのすべての側面を完全に調査できます。これには学習曲線が伴いますが、私の意見では、このツールに慣れることは開発者にとって不可欠です。開始するには、タスク マネージャーを使用して実行中のプロセスの完全なメモリ ダンプを取得し、windows 用のデバッグ ツールをダウンロードしてインストールします。これが完了したら、いくつかのチュートリアルを見てください。コメントを投稿していただけると助かります。

于 2012-06-19T09:42:20.497 に答える
0

メイン スレッドを使用してメモリ/CPU を消費するタスクを実行している場合、例外がなくても UI はアイドル状態になります。

于 2012-06-19T09:33:00.770 に答える