2010-04-29 8 views
9

nasıl ben şu anda benim Delphi app nasıl kullanıldığını yığın alanı çok görebilirim? Ben yığın sorun gibi geliyor bir çok garip bir hata vardı. Ne kadar yığın alanının kullanımda/kaldığı konusunda biraz fikir edinmek için uygulamanızın günlüğüne eklemek istiyorum. hata ayıklayıcısını kullanmak muhtemelen çok büyük değildir çünkü rutin defalarca çağrılabilir.Delphi uygulamasında yığın alanının ne kadarının kullanıldığını nasıl görebilirim?

Teşekkürler!

cevap

11

Bu size geçerli yığın kullanımını vermelidir:

function CurrentStackUsage: DWord; 
asm 
    mov eax, fs:[4] 
    sub eax, esp 
end; 

kafamın garnitürü çalışma anında maksimum yığın boyutunu almak için basit bir yol kapalı hatırlamıyorum, ancak varsayılan sahip linker seçeneklerinizde değer. SysInternals'ndan

+0

Cevabınız için teşekkür ederim! Bunun tarafından döndürülen değerin ne kadar küçük olduğuna şaşırdım. yığının en çok kullanılan% 1 olduğunu gösterir. bu sayı bayt cinsinden mi? –

+0

Evet, bu bayt döndürür. –

2

VMmap Yığına da dahil olmak üzere bir uygulama tarafından kullanılan bellek, her tür, grafik bir görünümünü verebilir. Per Larsen'in cevabındaki işlev gibi tam kullanımı vermez, ancak uygulamanızın farklı aşamalarında bellek kullanımını görselleştirmenize yardımcı olabilir.

+0

ilginç bir uygulama; Bundan yeni bir şey öğrenebilirim. Teşekkürler! –

İlgili konular