マルチスレッドで、いくつかのブレークポイントを設定したプログラムがあります。多くの場合、プログラムがブレークポイントに到達すると、緑色で強調表示されたコード行が表示されます。これは、プログラムが現在の関数から戻ったときに実行される次のコード行であることを示しています。ただし、ヒットしたブレークポイントは、実際には別のスレッド、別のソースファイルにあります。この線は、実際に破損の原因となったスレッドであるにもかかわらず、黄色(またはその他)で強調表示されていません。
これまでに問題を解決するために私が見つけた唯一の方法は、プログラムの実行を停止し、ソリューションをクリーンアップして、ソリューション全体を再構築することです。これは約70%の効果がありますが、私は頻繁に何度かそれをしなければなりません。
関連する可能性のある追加情報:プログラムはC#で記述されており、問題のコードはMVCWebサイトによって呼び出されているWCFサービスです。これはすべて、ローカルマシンのIIS7で実行されています。