NeverFreeMemory
-
class NeverFreeMemory
This class is used to allocate bytes of memory from a pool that is never intended to be freed. It is particularly useful to support DeletedChain, which allocates memory in just such a fashion.
When it is known that memory will not be freed, it is preferable to use this instead of the standard malloc() (or global_operator_new()) call, since this will help reduce fragmentation problems in the dynamic heap. Also, memory allocated from here will exhibit less wasted space.
Inheritance diagram
-
std::size_t get_total_alloc(void)
Returns the total number of bytes consumed by all the pages allocated internally by this object.
-
std::size_t get_total_unused(void)
Returns the difference between
get_total_alloc()
andget_total_used()
. This represents bytes in allocated pages that have not (yet) been used by the application.
-
std::size_t get_total_used(void)
Returns the total number of bytes requested by the application in calls to NeverFreeMemory::alloc().
-
std::size_t get_total_alloc(void)