16#ifndef COOK_MMAP_MEM_ARENA_H
17#define COOK_MMAP_MEM_ARENA_H
55 : m_minSize (minSize),
76 return VirtualAlloc (
nullptr, size, m_type, m_prot);
89 return VirtualFree (ptr, 0, MEM_RELEASE) == 0;
102 std::size_t m_minSize;
146 if (size < m_minSize)
150 void*
ptr =
mmap(
nullptr, size, m_prot, m_flag, -1, 0);
183 std::size_t m_minSize;
Definition allocator.h:39
void releaseAll()
Definition mmaparena.h:178
void * getSegment(std::size_t &size)
Definition mmaparena.h:144
bool freeSegment(void *ptr, std::size_t size)
Definition mmaparena.h:168
MmapArena(std::size_t minSize=DEFAULT_MIN_SEGMENT_SIZE, int prot=(PROT_READ|PROT_WRITE), int flag=(MAP_PRIVATE|MAP_ANONYMOUS))
Definition mmaparena.h:128
Definition allocator.h:29
const std::size_t DEFAULT_MIN_SEGMENT_SIZE
Definition config.h:52