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

Вниз

Поиск утечек памяти по исходнику *.PAS   Найти похожие ветки 

 
Stager ©   (2003-01-27 00:31) [0]

Интересна информация про сабж. Но с некоторыми деталями. Мне известно про существование BoundsChecker"а и прочих утилит, работающих с исполняемым файлом. Они работают "пост фактум", то есть по завершении программы смотрят, какая память освободилась, а какая нет. А нет ли средств, способных отследить возможность утечки памяти по исходнику? Например, компилятор Дельфи еще до запуска умеет выдавать хинты вида: "Variable X might not have been initialized", исходя из анализа текста PAS-файла. А есть ли софт, предназначенный для анализа исходника на предмет memory leaks? Что скажете, Мастера?

ЗЫ. По глупости сначала запостил эту тему в "Просто потрепаться". Надеюсь, не прибьют заживо...

С уважением, Алексей.


 
cypher ©   (2003-01-27 01:46) [1]

имхо, невозможно по исходник определить утечки памяти... неинициализированная переменная это просто, а вот как быть с динамически создаваемыми объектами? со списками например, где ты не знаешь заранее число элементов..


 
Stager ©   (2003-01-27 16:04) [2]

2 cypher

Ну вот предположим... Написал я тут один компонент, и на суд всеобщий выставил. Мне сразу говорят: см. там-то и там-то, утечка памяти, объект создается и не удаляется. Хорошо. А ту же самую логику, которой руководствовались при этом уважаемые критики, в программный код впихнуть? Разве это до сих пор никто не сделал?

С уважением, Алексей.


 
Кот Бегемот ©   (2003-01-27 17:13) [3]

2Stager © (27.01.03 16:04)
Спасибо за комплимент конечно :)))
Это не логика - Это интуиция :)))


 
cypher ©   (2003-01-28 01:29) [4]

Stager, наверное дело в том, что в твоей компоненте не так много заковырок для анализа, и ошибка очевидна... но универсальный алгоритм придумать очень не просто, поэтому его и борланд (да и все остальные) не морочаться по этому поводу... реализовали для таких вещей уже давным давно Garbage Collector (так пишется?) по рабоче-крестьянски - сборшик мусора, который сам удаляет потерянную память...
и вообще, соблюдение банальных правил написания "хорошего" -кода, имхо самый удачный вариант избавления от таких ошибок



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

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

Наверх




Память: 0.48 MB
Время: 0.012 c
6-15794
Adrian_Copil_Minune
2002-12-13 11:25
2003.02.06
Общение между клиентом и сервером.


1-15732
alexnmsk
2003-01-23 15:18
2003.02.06
Почему меняется палитра


1-15646
Brain
2003-01-29 10:43
2003.02.06
Иконка компонента на ToolBar - Delphi.


1-15670
Ich Hasse
2003-01-29 17:06
2003.02.06
Excel, последняя запись


3-15415
Наташа
2003-01-21 17:00
2003.02.06
Транзакции