memManager - управляет выделением и освобождением памяти определенного класса объектов объемом size. More...
Inherits bt::memManagerExport.
Public Member Functions | |
_FORCEINLINE void | free () |
destroy all memory segments and free list of free | |
_FORCEINLINE void | freeThis (void *val) |
delete memory for object | |
_FORCEINLINE void * | getNew (unsigned int size) |
create memory for object | |
Public Member Functions inherited from bt::memManagerExport | |
BT_API void * | _addAlloc () |
return pointer to new object and create new segment of objects if need. | |
BT_API void | _appendToFree (_voidint idat) |
add pointer to list of free | |
BT_API void | _calcsize (unsigned int size) |
prepare calculation for object size | |
BT_API void | _free () |
destroy all memory segments and free list of free pointers | |
BT_API void * | _getFree (unsigned int size) |
return pointer to free object | |
BT_API void | _markFree (void *val) |
mark pointer to free ??? | |
BT_API unsigned int | _segid (unsigned int id) |
return segment number | |
BT_API unsigned int | _valid (unsigned int id) |
return number object in segment | |
memManager - управляет выделением и освобождением памяти определенного класса объектов объемом size.
Каждый сегмент памяти представляет из себя отдельный элементы из набора равновеликих отрезков памяти одного непрерывного блока. В случае когда сегментированный блок памяти заканчивается выделяется дополнительный. При освобождении памяти сегмент маркируется свободным и используется повторно при запросе свободного сегмента. Не поддерживает многопоточность из соображений производительности, преднозначен для локальной обработки данных.