Record describing the current memory manager.
Source position: heaph.inc line 39
type TMemoryManager = record  | 
||
NeedLock: Boolean;  | 
  | 
Does the memory manager require a lock.  | 
Getmem: function(  | 
  | 
Function called when memory must be allocated on the heap.  | 
Size: PtrUInt  | 
||
):Pointer;  | 
||
Freemem: function(  | 
  | 
Function called when previously allocated memory can be freed again.  | 
p: pointer  | 
||
):PtrUInt;  | 
||
FreememSize: function(  | 
  | 
Function called when previously allocated memory with a known size can be freed again.  | 
p: pointer;  | 
||
Size: PtrUInt  | 
||
):PtrUInt;  | 
||
AllocMem: function(  | 
  | 
Same as getmem, but additionally clear the allocated memory (filled with 0 bytes).  | 
Size: PtrUInt  | 
||
):Pointer;  | 
||
ReAllocMem: function(  | 
  | 
Handler called when an allocated memory block should be resized.  | 
var p: pointer;  | 
||
Size: PtrUInt  | 
||
):Pointer;  | 
||
MemSize: function(  | 
  | 
Return the size of a memory block.  | 
p: pointer  | 
||
):PtrUInt;  | 
||
InitThread: procedure;  | 
  | 
Called when a thread is initialized.  | 
DoneThread: procedure;  | 
  | 
Called when a thread ends.  | 
RelocateHeap: procedure;  | 
  | 
Relocate the heap to a different location.  | 
GetHeapStatus: function: THeapStatus;  | 
  | 
Handler called when the heap status must be reported.  | 
GetFPCHeapStatus: function: TFPCHeapStatus;  | 
  | 
Handler to get FPC heap status information.  | 
end;  | 
TMemoryManager describes the memory manager. For more information about the memory manager, see the programmer's reference.