Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Подскажите программу для выявления утечки памяти [D6, WinXP]


leonidus ©   (2005-08-14 21:39:00) 

Люди подскажите пожалуйста программу для выявления утечки памяти, ничего подобного никогда не юзал (за исключением Диспетчера задач), но один юзер говорит что обнаружил утечку, как и мне это грамотно сделать?


Amoeba   (2005-08-15 18:06:00) [1]

MemProof: http://www.automatedqa.com/downloads/memproof/


Antonn   (2005-08-15 10:06:00) [2]

memproof, memcheck


Leonid Troyanovsky   (2005-08-15 09:14:00) [3]


> Tonich ©   (14.08.05 21:45) [1]
> Если Ваша программа после завершенмя " съест" некоторое
> количество памяти, Windows тактично об этом умолчит, и


И молча освободит все ресурсы, связанные с процессом
и его потоками.

--
Regards, LVT.

PS. A propos, GetAllocMemCount?


leonidus   (2005-08-15 08:39:00) [4]

Я нашел в сети упоминанания о программе Memory Sleuth от Borland, вроде это специализированный продукт, где его можно найте?


Tonich   (2005-08-14 21:45:00) [5]

Если Ваша программа после завершенмя " съест" некоторое количество памяти, Windows тактично об этом умолчит, и ошибка останется не найденной. Поэтому я рекомендую на этапе разработки, в файл проекта вставлять модуль checkMem, который отследит некорректную работу с памятью. Вставлять его нужно первым, для обеспечения чистоты эксперимента. Текст модуля:

unit checkMem;                    
interface
implementation

uses sysUtils, dialogs;
var HPs : THeapStatus;
var HPe : THeapStatus;
var lost: integer;
initialization
  HPs := getHeapStatus;
finalization
  HPe := getHeapStatus;
  Lost:= HPe.TotalAllocated - HPs.TotalAllocated;
  if lost >  0 then begin
     beep;
     ShowMessage( format('lostMem: %d',[ lost ]) );
  end;
end.


Проект Delphi World © Выпуск 2002 - 2004


Наверх

Титульная страница Поиск, карта сайта Написать письмо