[LUGOS-PROG] memory usage
Luka Napotnik
nluka at email.si
Mon Jan 17 15:33:56 CET 2005
lahko bi pa uporabil hans-boehm garbage collector za odkrivanje memory
leakov.
lp,
Luka
Anze wrote:
>Zivjo!
>
>V programu bi rad vedel, koliko spomina sem alociral. Gre predvsem za to, da
>bi rad, da mi program sporoca, ce sem kje pozabil klicati free() (ce se
>stevilo povecuje, imam nekje memory leak).
>
>Nasel sem tele opcije:
> - getrusage, ampak izgleda, da v Linuxu ta funkcija ne vraca porabe spomina
>(vedno vraca 0).
> - sysinfo() vraca samo celoten spomin na racunalniku,
> - brk(0) (to je predlagal nekdo na comp.os.linux.development.system):
>
>The difference in return values of calls to brk(0) gives an indication
>of changes in the malloc() heap size, for common conditions [each
>allocation less than 128KB, ...] of GNU glibc usage. This does not
>count static areas of the main program, shared libraries, or modules
>loaded dynamically. It also does not count direct use of mmap().
>Other conditions and restrictions apply. But it might work
>well enough in many cases.
>
>Problem je samo v tem, da v "man 2 brk" ne pise nicesar, kar bi zgornji
>odstavek potrdilo.
>
>- namesto malloc / calloc / realloc / free lahko klicem svoje funkcije, ki
>stejejo porabo - vendar pa potem ne bom vedel, ce kje pozabim dealocirati
>spomin, ki ga alocira npr. libCurl ali libExpat, pa se zoprno je za uporabo
>
>- /proc - vendar pa je to tezje dobiti ven (parsati moram datoteko), pa se
>spremeni se lahko kadarkoli.
>
>- ps in parsanje izhoda - glej prejsnjo tocko. :)
>
>Zanima me, ali sem zgresil kaksno bolj preprosto opcijo? Sigurno nisem prvi,
>ki dela nekaj podobnega... ;)
>
>LP!
>
>Anze
>_______________________________________________
>lugos-prog mailing list
>lugos-prog at lugos.si
>http://liste2.lugos.si/cgi-bin/mailman/listinfo/lugos-prog
>
>
>
More information about the lugos-prog
mailing list