web-dev-qa-db-fra.com

Erreur de débogage Visual Studio 2017: pour empêcher un abandon non sécurisé lors de l'évaluation de la fonction * .toString de tous les threads autorisés

J'ai mis à jour Visual Studio 2017 vers la version 15.8.2. 

Après cette mise à jour, j'ai rencontré ces erreurs lors du débogage:

 Error Image 1

 Error Image 2

 Error Image 3

Voici les messages d'erreur:

Erreur de débogage Visual Studio: Pour empêcher une interruption non sécurisée lors de l'évaluation de la fonction * .toString, tous les threads étaient autorisés à s'exécuter. Cela peut avoir changé l'état du processus et tous les points d'arrêt rencontrés ont été ignorés.

Cette erreur apparaît assez souvent et après un certain temps, Visual Studio se bloque.

J'ai essayé à nouveau de désinstaller et d'installer Visual Studio et de réinitialiser les préférences, mais je n'ai pas eu de chance. 

Lorsque je désactive l'option "Activer l'évaluation des propriétés et d'autres appels de fonction implicites", la même erreur se produit lorsque j'essaie d'évaluer certaines propriétés en déplaçant la souris dessus. C'est assez difficile de déboguer sans cela et je n'avais aucun problème avant cette compilation.

Le problème est le même avec C # et Visual Basic (.NET).

Existe-t-il une solution à ce problème? Mon équipe n'a pas de problème à travailler sur le même projet avec Visual Studio 2017 version 15.7.4. 

4

J'ajoute le même message d'erreur mais avec un nom de fonction différent:

Pour éviter un abandon non sécurisé lors de l'évaluation de la fonction 'Microsoft.VisualStudio.Debugger.Runtime.Tracing.Refresh' tous les threads ont été autorisés à courir. Cela peut avoir changé l'état du processus et tous les points d'arrêt rencontrés ont été ignorés.


Voici comment je me suis débarrassé de ce bug embêtant:
Dans Visual Studio 2017, accédez à
Outils → Options → Débogage → Général → Activer le mode "Utiliser le mode de compatibilité géré".
grâce à cet article:
https://www.codeart.dk/blog/2018/9/vs2017-debugger-timeout/

3
groch

Erreur de débogage Visual Studio 2017: pour empêcher un abandon non sécurisé lors de l'évaluation de la fonction * .toString de tous les threads autorisés à s'exécuter

Selon ce document :

Une raison commune à ce problème est que lorsque le débogueur évalue une propriété, elle permet uniquement l’exécution du thread en cours d’inspection. Alors si la propriété attend que d'autres threads soient exécutés dans le fichier débogué l’application, et si elle attend d’une manière différente de celle du .NET Runtime capable d'interrompre, ce problème se produira.

Et pour résoudre ce problème, vous pouvez essayer de suivre deux solutions possibles:

  • Solution n ° 1: Empêcher le débogueur d’appeler la propriété getter ou
  • Solution n ° 2: demandez au code cible de demander au débogueur d’abandonner la méthode To__ de Evaluation.

De plus, si ci-dessus ne résout pas cette erreur, vous pouvez également installer l'ancienne version précédente de Visual Studio pour vérifier si cela fonctionne pour vous:

https://docs.Microsoft.com/en-us/visualstudio/productinfo/installing-an-earlier-release-of-vs2017#top

J'espère que cela t'aides.

0
Leo Liu-MSFT