Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Beschrijving
TTD Heap-objecten worden gebruikt om informatie te geven over heap-aanroepen die plaatsvinden tijdens een tracering.
Eigenschappen
Elk heap-object heeft deze eigenschappen.
| Vastgoed | Beschrijving |
|---|---|
| Handeling | Beschrijft de actie die is opgetreden. Mogelijke waarden zijn: Alloc, ReAlloc, Free, Create, Protect, Lock, Unlock, Destroy. |
| Stapel | De handgreep voor de Win32 heap. |
Voorwaardelijke eigenschappen
Afhankelijk van het heap-object kan het enkele van de onderstaande eigenschappen hebben.
| Vastgoed | Beschrijving |
|---|---|
| Adres | Het adres van het toegewezen object. |
| VorigeAdres | Het adres van het toegewezen object voordat het opnieuw werd toegewezen. Als Address niet hetzelfde is als PreviousAddress, heeft de herlocatie ervoor gezorgd dat het geheugen werd verplaatst. |
| Grootte | De grootte en/of aangevraagde grootte van een toegewezen object. |
| BaseAddress | Het adres van een toegewezen object in de heap. Het kan het adres vertegenwoordigen dat wordt vrijgemaakt (gratis) of het adres van het object voordat het opnieuw wordt toegewezen (ReAlloc.) |
| Vlaggen | Betekenis is afhankelijk van de API. |
| Resultaat | Het resultaat van de heap-API-aanroep. Niet-nul betekent succes en nul betekent falen. |
| ReserveSize | Hoeveelheid geheugen om te reserveren voor de heap. |
| CommitSize | Oorspronkelijke vastgelegde grootte voor de heap. |
| MakeReadOnly | Een niet-nul waarde geeft aan dat er een aanvraag is om de heap op alleen-lezen in te stellen; Een nulwaarde geeft aan dat de heap moet worden ingesteld op lezen en schrijven. |
Kinderen
| Voorwerp | Beschrijving |
|---|---|
| TijdBegin | Een positieobject dat de positie aan het begin van de toewijzing beschrijft. |
| Eindtijd | Een positieobject dat de positie aan het einde van de toewijzing beschrijft. |
Voorbeeldgebruik
Gebruik deze opdracht dx (Display Debugger Object Model Expression) om het heapgeheugen in een raster weer te geven met behulp van de optie -g.
0:0:000> dx -g @$cursession.TTD.Data.Heap()
=======================================================================================================================================================
= = Action = Heap = Address = Size = Flags = (+) TimeStart = (+) TimeEnd = Result = PreviousAddress =
=======================================================================================================================================================
= [0x0] : [object Object] - Alloc - 0xaf0000 - 0xb0cfd0 - 0x4c - 0x0 - FAB:17B1 - FAD:40 - - =
= [0x1] : [object Object] - Alloc - 0xaf0000 - 0xb07210 - 0x34 - 0x8 - FB1:9 - FB3:74 - - =
= [0x2] : [object Object] - Alloc - 0xaf0000 - 0xb256d8 - 0x3c - 0x8 - E525:174 - E526:E1 - - =
De uitvoer kan worden beschreven als 'genormaliseerde gegevens' omdat er een gekozen set API's is die heap-bewerkingen vertegenwoordigen. De gegevens die uit de juiste parameters worden geëxtraheerd, worden op een uniforme manier gepresenteerd.
Als u op TimeStart of TimeEnd klikt, gaat u naar dat punt in de trace.
Klik op het parameterveld naast een specifieke vermelding om beschikbare parameterinformatie weer te geven.
dx -r1 @$cursession.TTD.Data.Heap()[2].@"Parameters"
@$cursession.TTD.Data.Heap()[2].@"Parameters"
[0x0] : 0x16c7d780000
[0x1] : 0x280000
[0x2] : 0x20
[0x3] : 0x0
...
Verhoog de recursie -r waarde om aanvullende informatie weer te geven.
Zie ook
Foutopsporing van tijdreizen - Inleiding tot foutopsporingsobjecten voor tijdreizen