Aracılığıyla paylaş


TTD Yığın Nesneleri

Açıklama

TTD Yığın nesneleri, izleme sırasında gerçekleşen yığın çağrıları hakkında bilgi vermek için kullanılır.

Özellikler

Her yığın nesnesi bu özelliklere sahip olacaktır.

Mülkiyet Açıklama
Eylem Gerçekleşen eylemi açıklar. Olası değerler şunlardır: Alloc, ReAlloc, Free, Create, Protect, Lock, Unlock, Destroy.
Yığın Win32 yığınının tutamacı.

Koşullu özellikler

Yığın nesnesine bağlı olarak, aşağıdaki özelliklerden bazılarına sahip olabilir.

Mülkiyet Açıklama
Adres Ayrılan nesnenin adresi.
Önceki Adres Ayrılan nesnenin yeniden tahsis edilmeden önceki adresi. Adres, PreviousAddress ile aynı değilse, yeniden yükleme belleğin taşınmasına neden oldu.
Boyut Ayrılmış bir nesnenin boyutu ve/veya istenen boyutu.
BaseAddress Yığın içinde ayrılmış bir nesnenin adresi. Serbest bırakılacak adresi (Serbest) veya nesne yeniden ayrılmadan önceki adresi (ReAlloc) temsil edebilir.
Bayraklar Anlamı API'ye bağlıdır.
Sonuç Yığın API çağrısının sonucu. Sıfır olmayan başarı, sıfır ise başarısızlık anlamına gelir.
Ayrılmış Boyut Bellek yığını için ayrılacak bellek miktarı.
CommitSize Öbek için başlangıç ayrılan boyut.
MakeReadOnly Sıfır olmayan bir değer, yığını salt okunur yapma isteğini gösterir; Sıfır değeri, yığının okuma-yazma olması gerektiğini gösterir.

Children

Nesne Açıklama
TimeStart Ayırmanın başındaki konumu açıklayan bir konum nesnesi .
ZamanSonu Ayırmanın sonundaki konumu açıklayan bir konum nesnesi .

Örnek Kullanım

-g seçeneğini kullanarak yığın belleğini bir kılavuzda görüntülemek için bu dx (Görüntü Hata Ayıklayıcısı Nesne Modeli İfadesi) komutunu kullanın.

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     -        -                 =

Yığın işlemlerini temsil eden seçilmiş bir API kümesi olduğundan çıkış "normalleştirilmiş veriler" olarak tanımlanabilir. Uygun parametrelerden ayıklanan veriler tekdüzen bir şekilde sunulur.

TimeStart veya TimeEnd'e tıkladığınızda izlemedeki bu noktaya gidersiniz.

Kullanılabilir parametre bilgilerini görüntülemek için belirli bir girişin yanındaki parametreler alanına tıklayın.

dx -r1 @$cursession.TTD.Data.Heap()[2].@"Parameters"
@$cursession.TTD.Data.Heap()[2].@"Parameters"                
    [0x0]            : 0x16c7d780000
    [0x1]            : 0x280000
    [0x2]            : 0x20
    [0x3]            : 0x0
...    

Ek bilgileri görüntülemek için özyineleme -r değerini artırın.

Ayrıca Bkz.

Zaman Yolculuğu Hata Giderme - Zaman Yolculuğu Hata Giderme nesnelerine giriş

Zaman Yolculuğu Hata Giderme - Genel Bakış

dx (Display Debugger Object Model İfadesi)