[Lugge] Re: memory leak

  • From: "Zingus J. Rinkle" <zrinkle@xxxxxxxx>
  • To: lugge@xxxxxxxxxxxxx
  • Date: Tue, 02 Nov 2004 19:11:42 +0100

Roberto A. Foglietta wrote:

Ciao,

 sto lavorando su dillo il browser gtk/c. Purtroppo ho scoperto che ha
un memory leak e si perde 4Kb ad ogni reload. Vorrei usarlo come
visualizzatore di orari dei treni e degli autobus ma questo significa
che 10 istanze del programma con un reload ogni 5 secondi si consumano
circa ~30Mb all'ora. Definitivamente eccessivo.

 Dillo ha 42 mila righe di codice e non sono riuscito a trovare il bug.
 Avete idea di come fare un log di tutti i malloc/free che il programma
fa? Avete idea di qualche garbage collector in C che possa usare
all'interno di un progetto così complesso senza riscriverlo tutto?

A parte, l'ovvio "strace -e malloc,calloc,free" c'e` una serie di tool che overloadano o sostituiscono in qualche modo le calloc e le malloc di un programma con delle versioni che loggano duro l'occupazione di memoria (alcuni credo abbiano anche tool per rappresentare poi su di un grafico i dati). xmalloc ed electric fence i primi due nomi che mi vengono in mente. Mai provato ad usarli, pero`, principalmente perche` spesso richiedono di pasticciare col codice per incastrarceli (dunque tu provali e sappimi dire se funzano :-)


Ah, forse anche gprof ha delle opzioni per tracciare la memoria...
--
  _________  +-------------------------------------------------------+
\/   _____/ /  http://as0.da.ru  http://as1.da.ru      icq:164939262 |
ZJR _____/ |  alternative mailto:zingus_at_despammed.com             |
/\______/  +-------------------------------------- Zingus J. Rinkle -+

========----------

Archivio delle e-mail postate in lista
http://www.freelists.org/archives/lugge/

Prima di scrivere in m-list per favore leggi il regolamento
http://www.lugge.net/index.php?mod=cosa_facciamo/gruppo_di_discussione

Modifica dell'account sulla lista LUGGe
http://www.lugge.net/index.php?mod=cosa_facciamo/gruppo_di_discussione#list



Other related posts: