10.5 Обнаружение утечек памяти кучи

На верх  Назад  Вперёд

Free Pascal Имеет механизм для обнаружения утечек памяти кучи. Это встроенный модуль для управления памятью, который анализирует выделение/освобождение памяти и печатает отчёт об использовании памяти после выхода из программы.

Модуль, который выполняет эти функции, называется heaptrc. Если вы хотите использовать его, то вы должны подключить его первым модулем в разделе uses вашей программы. Альтернативный вариант – запускать компилятор с опцией –gh, и он подключит этот модуль автоматически.

После выполнения программы вы получите отчёт, подобный приведённому ниже:

Marked memory at 0040FA50 invalid

Wrong size : 128 allocated 64 freed

 0x00408708

 0x0040CB49

 0x0040C481

Call trace for block 0x0040FA50 size 128

 0x0040CB3D

 0x0040C481

Выходной результат работы модуля heaptrc можно настраивать с помощью нескольких переменных. Это можно делать также с помощью переменных среды окружения.

Больше информации вы можете найти в документации по модулям.