Если Ваша программа после завершенмя " съест" некоторое количество памяти,
Windows тактично об этом умолчит, и ошибка останется не найденной.
Поэтому я рекомендую на этапе разработки, в файл проекта вставлять модуль checkMem,
который отследит некорректную работу с памятью.
Вставлять его нужно первым, для обеспечения чистоты эксперимента.
Текст модуля:
unit checkMem;
interfaceimplementationuses 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 thenbegin
beep;
ShowMessage( format('lostMem: %d',[ lost ]) );
end;
end.
В статье описывается модуль checkMem, предназначенный для обнаружения неиспользованных частей памяти в программе после ее завершения и вывода ошибки, если потеря памяти превышает определенный порог.
Комментарии и вопросы
Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS