web-dev-qa-db-fra.com

Visual Studio bloque régulièrement l'exécution de Microsoft.VisualStudio.Web.Host.exe

Contexte

Je gère plusieurs sites Web qui sont des "projets de site Web" Visual Studio.

Problème

J'ai trouvé qu'avec quelques ces projets, Visual Studio se bloque régulièrement pendant que je travaille sur le code. Cela ne se produit pas pour certains des projets de site Web, et je n'ai vu cela se produire sur aucun site Web Projets d'application .

Symptômes

  • Chaque fois qu'il gèle, il me faut environ une demi-minute avant de pouvoir le réutiliser.
  • Lors d'un gel, le Gestionnaire des tâches de Windows signale que Microsoft.VisualStudio.Web.Host.exe maximise l'un des cœurs de processeur.

Étapes à reproduire

  1. Ouvrir un .cs fichier sous le App_Code répertoire.
  2. Apportez une modification au fichier.
  3. Enregistrez le fichier.
  4. Naviguez ailleurs (par exemple, basculez sur l'onglet, fermez le fichier, ouvrez un programme différent dans Windows).
  5. Revenez au fichier (par exemple, basculez vers l'onglet, ouvrez-le ou revenez à Visual Studio).

Autres actions qui semblent parfois déclencher le problème:

  • "Aller à la définition"
  • Ouverture d'un dossier
  • Aperçu d'un fichier
  • Fermer un dossier
  • Utiliser un refactoring
  • "Trouver des usages"

Ce que j'ai essayé

  • Visual Studio 2012 et Visual Studio 2015
  • Modification de l'action de création du projet de site Web
  • Désactiver "Créer un site Web dans le cadre de la solution"
  • La suppression des références Web et du dossier Bin semble minimiser le problème, mais cela brise évidemment le site Web. Peut-être que les projets de sites Web rencontrent ce problème lorsqu'ils contiennent beaucoup de code C # autre que des fichiers code-behind?

Problèmes similaires

J'ai trouvé les problèmes potentiellement liés suivants en utilisant Google, mais aucun d'entre eux ne semblait contenir une solution de contournement ou une solution.

16
Sam

Ce problème a cessé de se produire lorsque le projet de site Web a été converti en projet Web Application.

Ce n'est pas une solution facile, mais cela a mis fin au problème.

0
Sam

J'ai remarqué que le problème se produisait moins souvent lorsque j'ai suspendu ReSharper.

ReSharper options in Visual Studio showing the "Suspend Now" button

Le problème se produisait encore occasionnellement lors de la modification des classes sous App_Code, mais le redémarrage de Visual Studio a fonctionné.

7
Sam

J'étais confronté à un problème similaire. Un seul projet d'application Web avec des dizaines de bibliothèques de classes, migré de VS 2010 vers VS 2013.

J'ai pu résoudre mon problème en désactivant l'option "Processus d'hébergement":

Pour désactiver le processus d'hébergement

  1. Ouvrez un projet exécutable dans Visual Studio. Projets qui ne
    produire des exécutables (par exemple, bibliothèque de classes ou projets de service) n'ont pas cette option.
  2. Dans le menu Projet , cliquez sur Propriétés .
  3. Cliquez sur l'onglet Déboguer .
  4. Décochez la case Activez le processus d'hébergement Visual Studio .

Détails complets sur MSDN: http://msdn.Microsoft.com/en-us/library/ms185330.aspx

6
sdg

Une autre option pour les personnes rencontrant ce problème sur d'anciennes applications Web qui n'ont pas la page de propriétés dans la réponse acceptée ci-dessus.

Désactivez "Autoriser la mise à jour de ce site précompilé".

  1. Site ouvert/Solution
  2. Cliquez avec le bouton droit et affichez les pages de propriétés
  3. Accéder aux options MSBuild
  4. Décochez "Autoriser la mise à jour de ce site précompilé"

Cela a fonctionné pour moi.

4
Isaac

Leurs symptômes dans la question de ce poste ressemblent exactement aux cauchemars que je viens d'avoir aujourd'hui:

Autres actions qui semblent parfois déclencher le problème:

"Aller à la définition"

Ouverture d'un dossier

Aperçu d'un fichier

Fermer un dossier

Utilisation d'un refactoring "Rechercher les usages"

De plus, intellisense ne fonctionnait pas (même avec CTRL + J) et la "définition Peek" était également suspendue.

J'ai dû continuer à tuer Visual Studio (2015 et 2017).

Mon correctif consistait à entrer dans le projet avec lequel j'avais des problèmes, à ouvrir la "console du gestionnaire de packages" et à désinstaller et réinstaller la "DotNetCompilerPlatform"

uninstall-package Microsoft.CodeDom.Providers.DotNetCompilerPlatform 

puis

install-package Microsoft.CodeDom.Providers.DotNetCompilerPlatform

Jusqu'à présent, chaque problème que j'ai rencontré n'a pas refait surface (mais c'était juste aujourd'hui, il faut donc encore lui donner du temps).

METTRE À JOUR:

Il a recommencé à revenir. J'ai également remarqué que quiconque avait installé la solution ne l'avait fait que pour deux des différents projets. La désinstallation de la plate-forme du compilateur (ce qui signifie l'utilisation des compilateurs fournis avec Visual Studio) a de nouveau rendu la vie saine.

1
Mike Cheel