2012-01-24 4 views
3

コードを変更してすぐに反映させたい場合、これは迷惑になります。

これはシンボルの読み込み元と関係がありますか?通常のデバッグモードで実行するとアプリケーションを一時停止しようとしましたが、毎回別の場所で一時停止されます。

編集:私はアプリケーションがフリーズしていることを意味します(プログレスバーが表示されたスプラッシュフォームは、数秒間うまく読み込んだ後に反応しなくなります)。一時停止した場合、メインスレッドの位置は一貫していません。この待ち時間も変わるようですが、最終的に何かを待っていることを示す何点かの後に、ロードを完了します。

Microsoft pdbs用のSymbol serverはチェックされていません。有効になっている.NET Frameworkのソースステッピングはチェックされていません。 Enabled Just My Codeがチェックされています。有効なソースサーバーのサポートはオフになっています。

+0

「ストール」とはどういう意味ですか? Visual Studioが応答を停止するか、アプリケーション自体が実行されません。 –

+0

一時停止すると、再開して再開しましたか?もしそうなら、その間に何か進歩を遂げましたか?問題に関する情報をもう少し伝えるべきです。 –

+1

Web App、WinForms、SilverlightまたはWindows WPF、コンソールAPP、Windowsサービス、Windows Phoneプラットフォームとは何ですか? – Lloyd

答えて

1

よく知られているが散発的な問題ですが、Visual Studio 2005以降、長い歴史があります。この問題は、完了コールバックでI/O操作を行うマルチスレッドアプリケーションに影響します。私の個人的な領収書は、この問題を回避するには:

  • 開発マシンは、少なくとも2つのCPUコア
  • [ブレークポイント]ウィンドウからすべてのブレークポイントを削除する必要があります。ときどき時代遅れのものは、デバッガの無限循環につながります。
  • プログラムの冒頭、できればmain関数でブレークポイントを設定します。メインフォームがある場合は、そのコンストラクタの最初の行にブレークポイントを設定しようとすることができます。そのブレークポイントを削除しないでください。そうしないと、デバッガが再びハングアップして、再度設定する必要があります。はい、ブレークポイントは役に立たないと思われますが、デバッガが良好な状態を維持するのに役立ちます。
  • 上記の提案が役立たない場合は、System.Window.Forms.MessageBox.Show( "123")をアプリケーションがウィンドウレスであれば、プログラムの開始。 Showメソッドの前後にブレークポイントを設定することもできます