[Properties (by Name)] [Methods (by Name)] [Events (by Name)]
Memory manager for fixed memory blocks which does not free any memory.
Source position: pooledmm.pp line 80
type TNonFreePooledMemManager = class |
||
public |
||
ClearOnCreate: Boolean; |
|
Determines whether newly allocated memory should be cleared. |
|
Size of an item in the list. |
|
procedure Clear; |
|
Clears the memory. |
constructor Create(); |
|
Creates a new instance of TNonFreePooledMemManager. |
destructor Destroy; override; |
|
Removes the TNonFreePooledMemManager instance from memory. |
function NewItem; |
|
Return a pointer to a new memory block. |
procedure EnumerateItems(); |
|
Enumerate all items in the list. |
end; |
|
Memory manager for fixed memory blocks which does not free any memory. |
|
| | ||
TObject |
TNonFreePooledMemManager keeps a list of fixed-size memory blocks in memory. Each block has the same size, making it suitable for storing a lot of records of the same type. It does not free the items stored in it, except when the list is cleared as a whole.
It allocates memory for the blocks in a exponential way, i.e. each time a new block of memory must be allocated, it's size is the double of the last block. The first block will contain 8 items.