web-dev-qa-db-ja.com

Visual Studioのデバッグがシンボルの読み込み時に非常に遅い

Visual Studioのデバッグ/読み込みが非常に遅い とほぼ同じ問題がありますが、そのような問題の解決策を見つけることができませんでした。

私はその質問の中で説明されていることをすべて試しましたが、それでも、初めてのシンボルの読み込みは非常に遅いです。

他の質問と同様に、MVCプロジェクトを開始すると、出力パネル内に次のような行が表示されます。

'iisexpress.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\02ba097f\ab73cbf7\App_Web__headerusermenu.cshtml.ee708ea.myhgafpb.dll', Symbols loaded.
'iisexpress.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\02ba097f\ab73cbf7\App_Web__layoutcmsbase.cshtml.ce72eb6d.ovoanhe-.dll', Symbols loaded.
'iisexpress.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\02ba097f\ab73cbf7\App_Web__notificationmessage.cshtml.5346933.9aei7ems.dll', Symbols loaded.

このようなエントリにはそれぞれ約300〜500ミリ秒かかり、これらはプロジェクト内にあるすべての部分ビューに対して実行されます。これは非常に重要です。

私は他の質問内で解決策を試みましたが、それでも速い応答時間を得られませんでした。

これらは私たちが行ったいくつかのテストです:

IIS Expressを使用

  • ウェブサイトの読み込みには最初約2分かかります
  • Webサイトの停止と再起動には約1分45秒かかります
  • Webサイトが実行されたら、[すべてのシンボルを読み込む]([ツール]> [オプション]> [デバッグ]> [シンボル]> [すべてのシンボルを読み込む])を押し、プロジェクトを停止して再度実行します。それでも、プロジェクトの実行中は[すべてのシンボルを読み込む]ボタンは無効になっているため、初めて、[すべてのシンボルを読み込む]を押すには、プロジェクトが読み込まれるまで待つ必要があります。

Visual Studio開発サーバーを使用する

  • 最初は約50秒かかります
  • プロジェクトを停止して再度開始し、約20秒かかります
  • [すべてのシンボルをロード]をクリックしてプロジェクトを停止し、再び開始するには約15秒かかります

これは、プロジェクトを初めてロードするのに非常に長い時間がかかるため、非常にイライラしています。

質問内で言及されているもの以外の可能な解決策 Visual Studioのデバッグ/読み込みが非常に遅い これは役立つでしょうか?

35
Mark Cassar

私の場合、VSで現在のソリューションの一部ではないファイルを開いていました(それはたまたま参照用のブレークポイントでマークしたXMLファイルでした)。これらの特定のブレークポイントを削除すると、問題は解決しました。

4
MFry

ローカルネットワーク共有でプロジェクトをホストしているときに同じ問題が発生しました。ローカルシステムに移動すると、シンボルの読み込み時間が90%短縮されました。

2
Mr. Muh

Rkawanoのコメントによると、Fusion Logをオフにすると、この問題を解決できる場合があります(私にとってはそうでした)。次の 記事 を読んだ後、フュージョンログを有効にして、それを忘れていました。しばらくしてから、Visual Studio 2013の大幅なスローダウンが発生し始めました。症状は、特にデバッグセッションを終了するときにVS 2013が応答しなくなることです。また、プロジェクトの読み込み時またはデバッガーの停止時にシンボル読み込みダイアログを表示します(通常は表示されません)。

読み込みが遅いという同じ問題がありましたが、問題を抱えていたサンドボックスソリューションは1つだけでした。非常によく似たステージングおよびプロダクション/コピーソリューションが正常に機能していました。したがって、これらの環境調整のすべての人々は、それを説明できないと勧めていました(もちろん、とにかく試してみました。).csprojファイルを比較すると、疑わしい外観の違いが見つかりました。それを修正した後、物事は正常に戻りました。

0
Craig Simon

[ツール]、[オプション]、[環境]、[セキュリティの追加]の順に移動し、[ロードするコンポーネントの追加を許可する]のチェックを外して、Visual Studioを再起動します。

0
BipinBaglung

私はすべてのソリューションを試しましたが、何もうまくいかないようでした。シンボル設定を開いて、TOOLS> Options> Debugging> Symbolsを見つけ、Cache Symbols in this directory別のユーザーのディレクトリに設定C:\Users\<not my name>\AppData\Local\Temp\SymbolCache

次に、設定文字列を空にしてクリアし、設定されている他のpdbロケーションを削除しました。次にOKを押します。

enter image description here

その後、ビルドを開始し、VSがこれらのシンボルを解決できるようにしました(20秒)。その後、停止して再起動し、シンボルを読み込まずに起動しました。

私は別のユーザーから設定をインポートした行のどこかを想定しています。

0
cgatian

IIS Expressをバイパスしてローカルのアプリケーションを実行してみましたかIISサーバー?URLはlocalhost/{yourprojectname}のようになります。最初にアプリケーションにアクセスしたときの負荷はまだ遅いですが、Visual Studioは実行するたびにアプリケーションを起動するわけではないので、その後はかなりきちんとした状態を維持する必要があります。ローカルIISを使用すると、デバッガーを起動するときに、毎回IEを開いたり閉じたりする代わりに、Firefoxを開いたままにすることもできます。

0
Adrian