[メモ]Visual Studioで削除したはずのブレークポイントがデバッグ時に勝手に復活する件(ファントム・ブレークポイント)の対処法


Pocket

こちらではお久しぶりです。さく1です。
今回はシステム開発ネタというか開発環境ネタです。

最近Visual Studioで開発中にデバッグ実行すると、削除したはずのブレークポイントが何故か勝手に復活し、そこで処理が一時停止する現象が続いていました。この削除したはずのブレークポイントと、それが復活する現象をファントム・ブレークポイントといいます(今命名しました)。
長い間ファントム・ブレークポイントに悩んでいたのですが、本日やっと解消していたので備忘録として記録しておきます。

  1. 事象

    ・Visual Studioでデバッグのために挿入したブレークポイントを削除しても、デバッグ実行した際に削除したはずのブレークポイントが復活し、そこで処理が一時停止する。
    ・デバッグ実行するまではファントム・ブレークポイント(削除したはずのブレークポイント)の表示はされておらず、デバッグ実行するとブレークポイントが表示される。
    ・デバッグ実行時はファントム・ブレークポイント(削除したはずのブレークポイント)を削除・無効化するとブレークポイントは削除・無効化され、処理は一時停止しない。
    ・デバッグ実行時以外にファントム・ブレークポイント(削除したはずのブレークポイント)の箇所にブレークポイントを挿入→削除・無効化の操作をしても、デバッグ実行時には復活する。
    ・OS、Visual Studioを再起動しても解消しない。
    ・ディスク容量不足を解消しても解消しない。
    ・Visual Studioのインストーラーで修復を行っても解消しない。
    ・この事象が発生する条件に規則性は無い(と思われる)。

    なお、環境は以下の通り。
    OS:Windows 7
    Visual Studioのバージョン:Visual Studio 2015 Professional
    使用言語:C#(Visual Basicでも経験あり)

  2. 対処法

    デバッグ実行の都度ブレークポイントを削除してもいいのですが、面倒すぎて開発効率が急低下するのでイラっとする前に対処しましょう。
    対処は意外と簡単です。以下の方法で解消しました。

    ①Visual Studioで、該当の事象が発生するソリューションを開く。
    ②上部メニュー[デバッグ]-[すべてのブレークポイントを削除]をクリックする([デバッグ]-[すべてのブレークポイントを無効化]でも同様の効果ありとの情報あり)。
    ③Visual Studioでデバッグ実行し、ブレークポイントが復活しないことを確認する。

    ただし、この方法だと削除したいブレークポイントだけでなくすべてのブレークポイントを削除することになるので、その点は注意が必要です。

  3. まとめ

    ごく稀に発生する、削除したはずのブレークポイントが復活する事象の対処法を紹介しました。
    めったに発生しないうえにネット上にもあまり情報が無いので困ったものですが、対処は簡単なのでやってみてください。

    また、ネット上に情報が少ないので、本件について何か情報をお持ちの方がいらっしゃいましたらご教示ください。

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です