Oui, lors de l'instrumentation, le profileur va modifier votre code avec des instructions supplémentaires pour rassembler et suivre les données de performance nécessaires. Vous ne voudrez jamais distribuer une version instrumentée de vos assemblys, et vous ne voudrez pas utiliser d'assemblys instrumentés à des fins de débogage (car les sections critiques/conditions de course/etc pourraient certainement se comporter différemment étant donné l'instrumentation supplémentaire). Ceci étant dit, l'instrumentation peut être très utile pour les objectifs que le profilage est censé résoudre. En rassemblant les données réelles et en isolant les opérations coûteuses, les efforts d'optimisation peuvent être correctement ciblés et les résultats peuvent être mesurés avec précision, en évitant le temps perdu, la complexité accrue, la maintenance réduite et tous les autres problèmes associés à une optimisation prématurée.
Cool, Marc! Deux autres commentaires, 1. Juste confirmer avec vous que le mode d'instrumentation changera réellement le code original ou exécutable? 2. J'ai trouvé que jetBrains n'est pas gratuit et que des avantages par rapport au profileur intégré dans VSTS? – George2
Un autre commentaire, dans le modèle d'échantillonnage, est-il possible d'inclure l'heure à laquelle le thread est en attente? Si je me souviens bien, le modèle d'échantillonnage ne calcule pas le temps d'attente thread? Donc, si mon goulot d'étranglement de la performance de l'application est dans un thread toujours attendre, je ne peux jamais savoir à partir du modèle d'échantillonnage? – George2