J'utilise WINDBG pour analyser un fichier de vidage pour un programme qui présente un usage mémoire un peu trop élevé.WINDBG, comment afficher le contenu d'un tableau?
L'un des objets impliqués tient un tableau d'objets, faisant référence à un grand nombre d'objets que je voudrais regarder, pour essayer de savoir pourquoi ils ont été attribués.
Voici ce que j'ai essayé:
D'abord, ma collection d'objets ServiceContainer:
0:000> !do 05633014
Name: System.Collections.Generic.List`1[[LVK.IoC.ServiceContainer, LVK.Core]]
MethodTable: 08b3c7fc
EEClass: 6f70ca78
Size: 24(0x18) bytes
(C:\Windows\assembly\GAC_32\mscorlib\2.0.0.0__b77a5c561934e089\mscorlib.dll)
Fields:
MT Field Offset Type VT Attr Value Name
6f924324 40009d8 4 System.Object[] 0 instance 1da226ec _items
6f952da0 40009d9 c System.Int32 1 instance 5356 _size
6f952da0 40009da 10 System.Int32 1 instance 5538 _version
6f950770 40009db 8 System.Object 0 instance 00000000 _syncRoot
6f924324 40009dc 0 System.Object[] 0 shared static _emptyArray
>> Domain:Value dynamic statics NYI
002b2a28:NotInit <<
Le tableau _items
il est celui que je veux regarder, donc j'ai lancé cette commande:
0:000> !do 1da226ec
qui produit:
Name: System.Object[]
MethodTable: 6f924324
EEClass: 6f70da64
Size: 32784(0x8010) bytes
Array: Rank 1, Number of elements 8192, Type CLASS
Element Type: LVK.IoC.ServiceContainer
Fields:
None
En regardant le web, j'ai trouvé indications qu'il y avait une option -v
que je pourrais utiliser sur quelque chose pour produire les valeurs du tableau, mais cela ne semble pas fonctionner.
Comment regarder les éléments de ce tableau?
Avec détails:! Da -détails 1da226ec – lsalamon