Je profile un service Windows en y attachant en mode 'sampling'.Le profileur VS2010 ne semble pas résoudre les symboles des images ngen'd
J'ouvre le fichier de résultats, la vue "fonctions" et je vois la fonction "la plus chaude" affichée comme [System.Runtime.Serialization.ni.dll]
sans indication de la fonction .net concrète à l'intérieur de cet assemblage.
Il semble que tous les autres symboles des assemblys ngen'd (.ni.dll) soient affichés de la même manière. En outre, je ne vois pas aucun symboles d'assemblées gérées mais non ngen'd dans la liste, ce qui est assez étrange.
Cependant, tous les symboles indigènes résolvent OK, comme "AwareLock :: Contention (int)", etc. De plus
, l'onglet Sortie dit:
Loaded symbols for C:\Windows\assembly\NativeImages_v2.0.50727_64\System.Runtime.Seri#\12aaff696a0c54773664b4c5407deaa2\System.Runtime.Serialization.ni.dll.
De plus, je ne lancé vsperfclrenv, mais tout résout OK dans le mode de profilage de concurrence, donc je pensais que je n'ai pas besoin vsperfclrenv depuis VS2010 fait tout pour moi.
J'ai essayé d'exécuter ngen update /debug /profile
mais cela n'a rien changé.
Comment est-ce que je configure mon environnement de sorte que le profileur d'échantillonnage de VS2010 résout des symboles dans ces assemblées managées?
En attendant, je vais essayer ngen uninstall
les ing.