ReallocMem

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
ibr_ozdemir
Üye
Mesajlar: 25
Kayıt: 27 Nis 2005 02:09

ReallocMem

Mesaj gönderen ibr_ozdemir »

kolay gelsin şunu sormak istiyorum :
ReallocMem ile bellekten ayırdığım alanı doğru düzgün bi şekilde nasıl silebilirim, FreeMem çalışmıyor(windowsun taskmanager'ından bakıyorum hiç bir düşme olmuyor). GetMem yordamı çalışıyor ama bu reallocu çalıştıramadım.
bilen varsa lütfen yardım etsin.
teşekkürler
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Mesaj gönderen sabanakman »

Mrb; task manager borlandın kullandığı kodlardan etkilenemeyebilir ama, TList nesnesinin Clear metodunu incelersen ReallocMem(p,0); şeklinde kullandığını göreceksin. Yani 0 boyutta yer ayırtarak boşaltıyor.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
ibr_ozdemir
Üye
Mesajlar: 25
Kayıt: 27 Nis 2005 02:09

Mesaj gönderen ibr_ozdemir »

evet tlist de reallocmem ile oluşturuyor elemanlarını ama gerçekten ram'den bir boşaltma işlemi olmuyor bunu şundan anlıyorum: meselat 70000000 adetlik bir alan taksim edelim sonra aynı pointer'ı freemem ile silelim(veya realloc ile 0 boyuta indirelim) sonra tekrar 70000000 adetlik bir alan daha almak isteyelim (reallocamem ile), hata ile karşılaşıyorum yanlış hatırlamıyorsam "out of memory" gibi birşeydi. herneyse yinede ilgine teşekkürler.

not:bu olay benim için artık problem teşkil etmiyor çünkü reallocmem metodu ile hazır hale getirilmiş bir pointer'ın eğer bir sahibi varsa(bir sınıf tobject) yani bu TObject in bünyesinde kullanılmış ise objeyi sildiğimizde, hakikaten bir silinme gerçekleşiyor (task manager'da düşüş görülüyor)
Cevapla