Язык:
Русский
English
MaxAvail (функция)
Возвращает размер самого большого непрерывного свободного блока в куче.
Объявление
Function MaxAvail : Longint;
Режим
Windows, Real, Protected
Замечания
Возвращает больший из:
- Самых больших свободных блоков внутри области менеджера
управления динамической памятью
- Глобальной кучи Windows
Значение соответствует размеру самой большой динамической переменной, которая может быть распределена.
Смотри также
Пример
Язык:
Русский
English
{ Пример программы для функции MaxAvail }
type FriendRec = record
Name : String[30];
Age : Byte;
end;
var
P : Pointer;
begin
if MaxAvail < SizeOf(FriendRec) then
WriteLn('Недостаточно памяти.')
else
begin
{ Распределяем память в куче }
GetMem(P, SizeOf(FriendRec));
{ ... }
end;
end.
Name : String[30];
Age : Byte;
end;
var
P : Pointer;
begin
if MaxAvail < SizeOf(FriendRec) then
WriteLn('Недостаточно памяти.')
else
begin
{ Распределяем память в куче }
GetMem(P, SizeOf(FriendRec));
{ ... }
end;
end.
Язык:
Русский
English
begin
WriteLn('Доступно ', MemAvail, ' байт.');
WriteLn('Самый большой свободный блок - ', MaxAvail, ' байт.');
end.
WriteLn('Доступно ', MemAvail, ' байт.');
WriteLn('Самый большой свободный блок - ', MaxAvail, ' байт.');
end.
Язык:
Русский
English
uses Crt;
type TFriendRec = record
Name : String[30];
Age : Byte;
end;
var
P : Pointer;
begin
if MaxAvail < SizeOf(TFriendRec) then
WriteLn('Недостаточно памяти')
else
begin
{ Распределяем память в куче }
GetMem(P, SizeOf(TFriendRec));
{ ...}
{ ... Используем память ... }
{ ...}
{ Освобождаем её при завершении программы }
FreeMem(P, SizeOf(TFriendRec));
end;
end.
type TFriendRec = record
Name : String[30];
Age : Byte;
end;
var
P : Pointer;
begin
if MaxAvail < SizeOf(TFriendRec) then
WriteLn('Недостаточно памяти')
else
begin
{ Распределяем память в куче }
GetMem(P, SizeOf(TFriendRec));
{ ...}
{ ... Используем память ... }
{ ...}
{ Освобождаем её при завершении программы }
FreeMem(P, SizeOf(TFriendRec));
end;
end.