Функции и процедуры Delphi. Справочник.

 

Не знаешь, где искать?
Читай Delphi FAQ!

 


V. ФУНКЦИИ И ПРОЦЕДУРЫ ДЛЯ РАБОТЫ С ПАМЯТЬЮ

1. Функции и процедуры для работы с памятью и указателями


Процедура GetMemoryManager (
var MemMgr: TMemoryManager );


Модуль: System

type TMemoryManager = record
GetMem: function( Size: Integer): Pointer;
FreeMem: function( P: Pointer): Integer;
ReallocMem: function( P: Pointer; Size: Integer): Pointer;
end;

Описание
Процедура возвращает указатели на поля диспетчера памяти, установленного в текущий момент.

Пример
var

GetMemCount: Integer;
FreeMemCount: Integer;
ReallocMemCount: Integer;
OldMemMngr: TMemoryManager;

function NewGetMem(Size: Integer): Pointer;
begin

Inc(GetMemCount);
Result:= OldMemMngr.GetMem(Size);

end;

function NewFreeMem(P: Pointer): Integer;
begin

Inc(FreeMemCount);
Result:= OldMemMngr.FreeMem(P);

end;

function NewReallocMem(P: Pointer; Size: Integer): Pointer;
begin

Inc(ReallocMemCount);

Result:= OldMemMngr.ReallocMem(P, Size);

end;


const

NewMemMgr: TMemoryManager = ( GetMem: NewGetMem;
FreeMem: NewFreeMem; ReallocMem: NewReallocMem );

procedure SetNewMemMgr;
begin

GetMemoryManager(OldMemMngr);
SetMemoryManager(NewMemMngr);

end;


[Вернуться к содержанию]

 


Рейтинг@Mail.ru