cds  1.4.0
Public Member Functions | Data Fields | Static Public Attributes
cds::memory::michael::Heap< Options >::processor_heap_base Struct Reference

Processor heap. More...

#include <cds/memory/michael/allocator.h>

Public Member Functions

superblock_descget_partial ()
 Get partial superblock owned by the processor heap.
 
void add_partial (superblock_desc *pDesc)
 Add partial superblock pDesc to the list.
 
bool unlink_partial (superblock_desc *pDesc)
 Remove superblock pDesc from the list of partial superblock.
 

Data Fields

CDS_DATA_ALIGNMENT(8) std
processor_desc
pProcDesc
 < pointer to the descriptor of active superblock owned by processor heap More...
 
const size_classpSizeClass
 pointer to size class
 
std::atomic< superblock_desc * > pPartial
 pointer to partial filled superblock (may be NULL)
 
partial_list partialList
 list of partial filled superblocks owned by the processor heap
 
unsigned int nPageIdx
 page size-class index, c_nPageSelfAllocation - "small page"
 
procheap_stat stat
 heap statistics
 

Static Public Attributes

static const unsigned int c_nPageSelfAllocation = (unsigned int) -1
 Small page marker. More...
 

Detailed Description

template<typename... Options>
struct cds::memory::michael::Heap< Options >::processor_heap_base

Processor heap.

Field Documentation

template<typename... Options>
const unsigned int cds::memory::michael::Heap< Options >::processor_heap_base::c_nPageSelfAllocation = (unsigned int) -1
static

Small page marker.

If page is small and can be allocated by the Heap, the nPageIdx value is c_nPageSelfAllocation. This optimization allows to allocate system memory more regularly, in blocks of 1M that leads to less memory fragmentation.

template<typename... Options>
CDS_DATA_ALIGNMENT (8) std processor_desc* cds::memory::michael::Heap< Options >::processor_heap_base::pProcDesc

< pointer to the descriptor of active superblock owned by processor heap

pointer to parent processor descriptor


The documentation for this struct was generated from the following file:

cds 1.4.0 Developed by Maxim Khiszinsky aka khizmax 2007 - 2012
Autogenerated Mon May 20 2013 00:38:01 by Doxygen 1.8.3.1