Как определить количество свободной памяти?
Для определения количества свободной физической памяти в байтах можно использовать функцию:
function MemAvail: LongInt;
но чаще всего, интерес представляет не количество свободных байт, а количество свободных системных ресурсов. Даже при почти полностью свободной памяти может не хватить, этих самых, системных ресурсов.
Для определения количества свободных системных ресурсов в процентах используется функция GetFreeSystemResources:
function GetFreeSystemResources(SysResource: Word): Word;
Параметр SysResource:
GFSR_SYSTEMRESOURCES - Количество свободных системных ресурсов в процентах.
GFSR_GDIRESOURCES - Количество свободных GDI ресурсов в процентах. GDI ресурсы включают указатели контекста, кисти, карандаши, области, шрифты и битовые изображения.
GFSR_USERRESOURCES - Количество свободных пользовательских ресурсов в процентах. Эти ресурсы включают указатели окон и меню.
Пример:
Label1.Caption := IntToStr(MemAvail DIV 1024)+' Kb'; Label2.Caption := IntToStr(GetFreeSystemResources (GFSR_SYSTEMRESOURCES))+'%';