6

Visual Studio でコードの一部をデバッグしています。このコードは、私が作成したカスタム セッション プロバイダーに属しており、Web アプリケーションの起動時にデバッグしています。プロバイダーの初期化を開始し、その関数に、初めて正常にヒットしたブレークポイントがあります。ただし、同じブレークポイントが再びヒットしていますが、小さな青いアイコンが表示され、カーソルを合わせると次のメッセージが表示されます。

プロセスまたはスレッドが最後のステップ以降に変更されました

私の調査では、ブレークポイントが別のアセンブリにヒットしていると言っている人から、ブレークポイントが別のスレッドからヒットしたと言っている人まで、いくつかの種類の答えを見つけました。

これが本当に何を意味するのか誰か知っていますか?

4

2 に答える 2

4

同じコードを実行する複数のスレッドがあり、そこにブレークポイントがある場合、Visual Studio はそれらのスレッドのいずれかがブレークポイントに到達するたびに実行を停止します。これは、予測不可能な順序で、すべてのスレッドで発生します。コードを段階的にデバッグしている場合、デバッグしていたコードを別のスレッドが実行し、ブレークポイントにヒットする可能性があります。Visual Studio は、次のステートメントの矢印に感嘆符の付いた青い円を配置することで、これについて通知します。

詳細はこちら: Visual Studio でマルチスレッド アプリケーションをデバッグする

于 2013-12-04T10:36:51.030 に答える
0

このアイコンは、最後に使用したスレッドとは別のスレッドでブレークポイントがヒットしたことを意味します。プログラムの動作にはまったく影響しません。

于 2016-11-29T07:03:44.980 に答える