複数の VS2010 プロジェクト/ソリューションから複数の DLL をロードする大規模なマルチスレッド C# プログラムを開発中です。それをデバッグすることは、私が予想していたよりも難しいことがわかりました (誰が思うでしょうか)。
問題は次のとおりです。多くの場合、いくつかのステップ オーバーやブレークオール操作の後、プログラム (またはおそらくデバッガー) は、実行も停止もされていない、ある種の不確定な状態に入ります。Debug
メニューで、Continue
との両方Break All
がグレー表示されているため、プログラムで作業を続けることができません。
常にではありませんが、これが発生すると、ウォッチ ウィンドウに次のメッセージが表示されることがあります。
前回の関数評価がタイムアウトしたため、関数評価が無効になりました。
プログラムは実行されていないようで (出力がなく、ブレークポイントで停止していません...)、停止しているようにも見えません (Watch
ウィンドウはグレー表示され、Call Stack
ウィンドウは空です)。
Stop Debugging
Restart
コマンドが使用可能で機能しています。
セッションを何度も再起動せずに、正常にデバッグできるようにするために何かできますか?
私は Windows 環境での開発に慣れていないため、明らかな何かが欠けている可能性があります。