Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.04;
Скачать: CL | DM;

Вниз

Memory leak   Найти похожие ветки 

 
BKV   (2004-03-18 15:11) [0]

Уважвемые мастера, посоветуете какую-нибудь утилитку для обнаружения Memory leaks в дельфийских программах.
чем вы пользуетесь?


 
Игорь Шевченко ©   (2004-03-18 15:15) [1]

MemProof


 
just me   (2004-03-18 15:40) [2]

MemCheck: http://v.mahon.free.fr/pro/freeware/memcheck/


 
Digitman ©   (2004-03-18 17:15) [3]


> чем вы пользуетесь?


головой

лучше "утилитки", нежели голова, не сыскать

каждому allocmem/reallocmem должен соответствовать свой freemem

без понимания того, как, в какой момент и при каких условиях явно или неявно происходят упомянутые действия по распределению/перераспределению/освобождению памяти в той или иной куче, никакой MemProof не поможет


 
Игорь Шевченко ©   (2004-03-18 17:31) [4]


> каждому allocmem/reallocmem должен соответствовать свой
> freemem
>
> без понимания того, как, в какой момент и при каких условиях
> явно или неявно происходят упомянутые действия по распределению/перераспределению/освобождению
> памяти в той или иной куче, никакой MemProof не поможет


Особенно хорошо применять эти постулаты к унаследованному коду :))


 
Тимохов ©   (2004-03-18 17:35) [5]

reallocmem"му может соответствовать также reallocmem без всякого freemem


 
BKV   (2004-03-18 17:35) [6]

Голова конечно хорошо, но и она иногда дает сбои.
Ну предположим, за свою голову я спокоен, а как быть с используемыми пакетами других разработчиков или даже VCL.
Могу точно сказать что в VCL (Delphi 3) довольно много Memory leaks.


 
Digitman ©   (2004-03-18 17:38) [7]


> Игорь Шевченко ©   (18.03.04 17:31) [4]


Игорь, комментарий не в твой огород) ... надеюсь, понимаешь ..

Касаемо же унаследованногго кода - нефига польговать код, не имеющий исх.текстов) .. это imho меня пока еще не подводило ... и мемлики, разумеется, были в практике, но стоило глянуть в исх.код чего-то хрен знает что делающего в своих потрохах, как проблема решалась в шесть секунд .. не думаю, что ты действуешь иначе)


 
BKV   (2004-03-18 17:43) [8]

Предположим такая ситуация:
У тебя в руках неизвестно кем написанный довольно большой проект и  
тебе надо довести его до ума.
Ты предлагаешь просматривать все десятки тысяч строк кода на правильность выделение\освобождения памяти?


 
Игорь Шевченко ©   (2004-03-18 17:46) [9]

Digitman ©   (18.03.04 17:38)

Сергей, речь как раз идет о том коде, который упомянут в
BKV   (18.03.04 17:43) [8]

Я, честно говоря, MemProof"ом пользовался считанное число раз, как раз в подобных ситуациях, когда приходилось искать утечки в чужих творениях. Кстати, неплохой инструмент и бесплатный :)


 
BKV   (2004-03-18 17:49) [10]

Кто нибудь пользовался AQTime?
Какие впечатления?


 
Digitman ©   (2004-03-18 17:50) [11]


> BKV   (18.03.04 17:43) [8]


я предлагаю думать репой головы? когда берешься за проект, использующий пакеты без исх. текстов


 
Игорь Шевченко ©   (2004-03-18 17:53) [12]

Digitman ©   (18.03.04 17:50)

Сергей, речь идет о проектах с исходными текстами. Которому ты, мягко говоря, не доверяешь, но с которым надо иметь дело. Причем, проект объемный :)


 
Defunct ©   (2004-03-18 18:22) [13]

> чем вы пользуетесь?

Лучшая утилитка, это сам Delphi.
киньте таймер на форму, в обработчике напишите:

procedure TForm1.Timer1Timer(Sender: TObject);
begin
 Caption := Format("Занято памяти: %DKb",[AllocMemSize Div 1024]);
end;


 
Игорь Шевченко ©   (2004-03-18 19:04) [14]

Defunct ©   (18.03.04 18:22)


> Лучшая утилитка, это сам Delphi.
> киньте таймер на форму


А Task Manager вообще уже написан. Только Ctrl+Shift+Esc нажать и выбрать колонку "Память".


 
romeo ©   (2004-03-18 22:33) [15]


> just me   (18.03.04 15:40) [2]
> MemCheck: http://v.mahon.free.fr/pro/freeware/memcheck/

Во, блин, полезно иногда, оказывается, читать ответы на чужие вопросы!..
Скачал только что эту примочку, решил проверить давно сделанную прогу (довольно объемистую). Тут же получил указание, что в таком-то модуле и на такой-то строке создаются экземпляры такого-то класа, которые в последствии не освобождаются. Очень удобно.
Молодцы буржуи!



Страницы: 1 вся ветка

Текущий архив: 2004.04.04;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.034 c
9-1063986182
Still_Swamp
2003-09-19 19:43
2004.04.04
Предложите алгоритм построения фрактальной карты высот


1-1079434708
Cretor
2004-03-16 13:58
2004.04.04
Раскладка клавы ...


14-1076735750
Труп Васи Доброго
2004-02-14 08:15
2004.04.04
Технология PLC


3-1078208297
sohat
2004-03-02 09:18
2004.04.04
Знатокам EhLib, Раскрывающийся список в Гриде без lookup поля.


7-1074427195
Magician
2004-01-18 14:59
2004.04.04
Где ошибка в LOGONUSER