[Comm] утечка памяти

Someone Unknown =?iso-8859-1?q?someone=5Flists_=CE=C1_bk=2Eru?=
Пн Июл 14 15:48:35 MSD 2003


В сообщении от 14 Июль 2003 12:42 Ткаченко Максим написал(a):
> Чем можно проверить утечку памяти?

Смотря насколько глубоко она запрятана... 8)
Сначала - libefence, libdmalloc.
Потом malloc debugger, не помню как называется, находится гуглем.
Потом пишем свою обертку вокруг malloc, и пользуясь ей пытаемся узнать, в 
каком месте течет.
Если не помогает - значит, текут системные/библиотечные вызовы (opendir, 
например, если ему забыли сделать closedir, отъедает аж 4 кило памяти).
В этом случае пишем свой менеджер памяти. 8) При инициализации отъедаем 
сколько сможем, а потом в обертке malloc'а раздаем память кусочками. Расход 
памяти получается только на системные вызовы. В этом случае отследить, где 
течет, становится проще некуда.

-- 
Regards,
Someone


Подробная информация о списке рассылки community