web-dev-qa-db-fra.com

Le débogage de Visual Studio est extrêmement lent lors du chargement de symboles

J'ai un problème qui est pratiquement similaire à le débogage/chargement de Visual Studio est très lent mais je n'ai pas réussi à trouver une solution à un tel problème.

J'ai essayé tout ce qui est décrit dans cette question et, malgré tout, le chargement du symbole pour la toute première fois est extrêmement lent.

Comme pour l’autre question, lors du démarrage d’un projet MVC, le panneau de sortie contient plusieurs lignes qui se composent de quelque chose de similaire à:

'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.

Ces entrées prennent environ 300 à 500 ms chacune et sont exécutées pour toutes les vues partielles du projet, qui sont assez considérables.

J'ai essayé la solution dans l'autre question, mais je n'ai toujours pas eu de temps de réponse rapide. 

Voici quelques tests que nous avons effectués:

Utilisation de IIS Express

  • Le chargement du site Web prend initialement environ 2 minutes
  • Arrêter le site Web et recommencer prend environ 1 min 45 s
  • Une fois que le site Web est en cours d'exécution, j'appuie sur Charger tous les symboles (Outils> Otions> Débogage> Symboles> Charger tous les symboles), puis arrête le projet et lance à nouveau. Cela prend beaucoup moins, environ 25 secondes. Néanmoins, le bouton Charger tous les symboles est désactivé tant que le projet n'est pas en cours d'exécution. Par conséquent, pour la toute première fois, il faut attendre que le projet soit chargé pour pouvoir charger tous les symboles.

Utilisation de Visual Studio Development Server

  • Commençant initialement, prend environ 50 secondes
  • Projet arrêté et recommencé, prend environ 20 secondes
  • En cliquant sur Charger tous les symboles, arrêter le projet et recommencer prend environ 15 secondes

Cela devient extrêmement frustrant car cela prend beaucoup de temps pour charger le projet pour la première fois. 

Toute solution possible autre que celles mentionnées dans la question Débogage/chargement de Visual Studio très lent qui pourrait aider?

33
Mark Cassar

Dans mon cas, un fichier ouvert dans VS ne faisait pas partie de ma solution actuelle (c’était un fichier XML que j’avais marqué avec des points d’arrêt pour référence rapide). Lorsque j'ai supprimé ces points d'arrêt particuliers, le problème a été résolu.

4
MFry

J'ai eu le même problème en hébergeant mon projet sur un partage réseau local. Le déplacer vers mon système local a réduit le temps de chargement des symboles de 90%!

2
Mr. Muh

Selon le commentaire de rkawano - désactiver Fusion Log permet parfois de résoudre ce problème (cela a été le cas pour moi). J'avais activé le journal de fusion après avoir lu le article puis je l'avais oublié. Après un certain temps, j'ai constaté un ralentissement important de Visual Studio 2013. Le symptôme est que VS 2013 ne répond plus, en particulier lors de la fin d'une session de débogage. Il affichera également des boîtes de dialogue de chargement de symboles lors du chargement d'un projet ou de l'arrêt du débogueur (celles-ci ne sont généralement pas affichées).

J'ai eu le même problème de chargement lent, mais il ne gênait qu'une solution de bac à sable. Des solutions très similaires de mise en scène et de production/copie fonctionnaient parfaitement. Donc, toutes ces modifications environnementales recommandées par les gens ne pouvaient pas l'expliquer (je les ai quand même essayées, bien sûr.) Ensuite, j'ai comparé les fichiers .csproj et trouvé une différence suspecte. Après avoir corrigé cela, les choses sont revenues à la normale.

0
Craig Simon

Sélectionnez Outils> Options> Environnement> Ajouter une sécurité Décochez la case "Autoriser le chargement des composants supplémentaires" Redémarrez Visual Studio.

0
BipinBaglung

J'ai essayé toutes les solutions et rien ne semblait fonctionner. J'ai déchiré mes paramètres de symboles OUTILS> Options> Débogage> Symboles et trouvé le Cache Symbols in this directory défini sur le répertoire d'un autre utilisateur, par exemple C:\Users\<not my name>\AppData\Local\Temp\SymbolCache

J'ai ensuite effacé la chaîne de paramètres en la rendant vide et ai supprimé tous les autres emplacements de pdb configurés. Puis appuyez sur OK.

 enter image description here

Ensuite, j'ai lancé une compilation et permis à VS de résoudre ces symboles (20 s). J'ai ensuite arrêté et redémarré et lancé sans charger de symboles.

Je suppose que quelque part dans la ligne, j'ai importé les paramètres d'un autre utilisateur.

0
cgatian

Avez-vous essayé de contourner IIS Express et d’exécuter l’application à partir de votre serveur IIS local? L'URL ressemblerait à ceci: localhost/{votrenomprojet}. La charge peut encore être lente la première fois que vous frappez l'application, mais après cela, elle devrait rester plutôt accrocheuse, car Visual Studio ne démarrera pas l'application à chaque fois que vous souhaitez l'exécuter. L'exécution de l'application à partir de votre IIS local vous permet également de garder Firefox ouvert lorsque vous démarrez le débogueur au lieu d'ouvrir et de fermer IE à chaque fois.

0
Adrian