Sources
Delphi Russian Knowledge Base
DRKB - база знаний по Дельфи в рунете, составленная Виталием Невзоровым

Как отследить потерю памяти

01.01.2007
http://sunsb.dax.ru

Если Ваша программа после завершенмя "съест" некоторое количество памяти, 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.
Previous page:
Функции для выделения, перераспределения и освобождения памяти
Top:
DRKB
Next page:
Method pointers -> Function pointers