[Linux-programlama] C malloc free

---------

New Message Reply About this list Date view Thread view Subject view Author view Attachment view

From: M.Atif CEYLAN (atifceylan@gmail.com)
Date: Thu 26 Apr 2007 - 12:49:49 EEST


herkese merhaba,
arkadaşlar C de yazdığım bir programda cok yoğun string işlemleri
kullanıyorum (10 larca mb lık dosyaları okuyup parse etmeye calışıyorum
ve bu işlemi periyodik olarak devamlı olarak yapıyorum). ancak
stringleri küçük parçalarda alıp her seferinde fonksiyona sokuyorum
mesela :

while (sart)
    islemyap(str)//burada en fazla 2 KB datam var

islemyap(char *str)
    char *a = (char*)malloc(256);
    char *b = (char*)malloc(25);

    a = str_temizle(sub_str(str,3,255));
    b = str_temizle(sub_str(str,258,24));
........................

şeklinde devam eden islemyap benzeri 4 fonksiyonum var.
sorunum şu. fonksiyon sona erdiğinde ayrılan bellek alanları zaten
boşalır düşüncesi ile değişkenlerimi free etmiyorum.
ancak top cıktısı bir facia gibi adeta. her seferinde yükselen bir
bellek var önümde. bu durum, çekirdeğin ihtiyat için benim programın
ayırdığı bellek alanlarını tutması ile alakalı olabilir mi? yoksa
fonksiyonların sonunda free etsem mi? ama o kadar fazla değişkenim var
ki gözüm yemiyor daha kötüsü bazıları şartlara göre set edildiği için
free işlemlerinde de kontrole ihtiyac duyacağım.fikirlerinizi bekliyorum
iyi çalışmalar...
M.Atıf CEYLAN
   
_______________________________________________
Linux-programlama mailing list
Linux-programlama@liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama


New Message Reply About this list Date view Thread view Subject view Author view Attachment view

---------

Bu arsiv hypermail 2.1.2 tarafindan uretilmistir.