Visual Studio 2015 et les outils de diagnostic

Depuis sa version 2015, Visual Studio propose une fenêtre de diagnostic en temps réel très utile. Mais elle n'est pas forcément adaptée aux solutions complexes qui ont bien souvent plusieurs projets de démarrage. Voilà une astuce permettant de sélectionner le projet de démarrage à diagnostiquer.

La fenêtre des outils de diagnostic de Visual Studio regroupe un ensemble d'informations utiles à propos de l'exécution de l'application en cours de débogage :

Fenêtre des outils de diagnostic

(cliquer sur l'image pour l'agrandir)

Lorsque dans Visual Studio plusieurs projets de démarrage sont exécutés en même temps, typiquement un serveur et un client, la fenêtre de diagnostic ne montre que les informations de la première application démarrée (en général, le serveur).
Pour pouvoir visualiser les informations de la deuxième application (le client), il suffit simplement de la faire remonter dans la liste des projets de démarrage :

Fenêtre de configuration des projets de démarrage

(cliquer sur l'image pour l'agrandir)

Et dans le cas (fréquent) où le client nécessite le serveur pour fonctionner, il faut alors retarder légèrement le démarrage du client, le temps que le serveur soit démarré et opérationnel. Cela se fait assez simplement en utilisant une méthode de type "Ping", côté serveur. Côté client, au démarrage, une boucle appelle cette méthode à intervalles régulier jusqu'à ce qu'elle réponde.
Cette fonctionnalité peut même s'avérer utile pour l'application en production, au cas où le serveur serait indisponible (dans ce cas, la boucle devra bien sûr s'arrêter au bout d'un moment pour ne pas bloquer indéfiniment l'application).

 

Le fait de pouvoir sélectionner l'application à diagnostiquer a déjà été demandé par la communauté. Alors si vous aussi la jugez utile, allez la supporter en votant pour elle :

 

Et pour plus d'informations sur les outils de diagnostic, consultez la MSDN : Outils de profilage.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Captcha *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.