ACE  6.2.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
ACE_Control_Block Class Reference

This information is stored in memory allocated by the <Memory_Pool>. More...

#include <Malloc.h>

Collaboration diagram for ACE_Control_Block:
Collaboration graph
[legend]

Classes

class  ACE_Malloc_Header
 This is the control block header. It's used by <ACE_Malloc> to keep track of each chunk of data when it's in the free list or in use. More...
 
class  ACE_Name_Node
 This class supports "named memory regions" within ACE_Malloc. More...
 

Public Member Functions

void dump (void) const
 Dump the state of the object. More...
 

Static Public Member Functions

static void print_alignment_info (void)
 Print out a bunch of size info for debugging. More...
 

Public Attributes

int ref_counter_
 Reference counter. More...
 
ACE_Name_Nodename_head_
 Head of the linked list of Name Nodes. More...
 
ACE_Malloc_Headerfreep_
 Current head of the freelist. More...
 
char lock_name_ [MAXNAMELEN]
 Name of lock thats ensures mutual exclusion. More...
 
char align_ [(ACE_CONTROL_BLOCK_ALIGN_BYTES)?ACE_CONTROL_BLOCK_ALIGN_BYTES:ACE_MALLOC_ALIGN]
 
ACE_Malloc_Header base_
 Dummy node used to anchor the freelist. This needs to come last... More...
 

Detailed Description

This information is stored in memory allocated by the <Memory_Pool>.

This class defines the "old" control block class for use in ACE_Malloc_T. This control block implementation is considerable more efficient than the "position independent" one below (ACE_PI_Control_Block) but if you are going to use it to construct a ACE_Malloc_T and access the memory from several different processes, you must "map" the underlying memory pool to the same address.

Member Function Documentation

void ACE_Control_Block::dump ( void  ) const

Dump the state of the object.

void ACE_Control_Block::print_alignment_info ( void  )
static

Print out a bunch of size info for debugging.

Member Data Documentation

char ACE_Control_Block::align_[(ACE_CONTROL_BLOCK_ALIGN_BYTES)?ACE_CONTROL_BLOCK_ALIGN_BYTES:ACE_MALLOC_ALIGN]
ACE_Malloc_Header ACE_Control_Block::base_

Dummy node used to anchor the freelist. This needs to come last...

ACE_Malloc_Header* ACE_Control_Block::freep_

Current head of the freelist.

char ACE_Control_Block::lock_name_[MAXNAMELEN]

Name of lock thats ensures mutual exclusion.

ACE_Name_Node* ACE_Control_Block::name_head_

Head of the linked list of Name Nodes.

int ACE_Control_Block::ref_counter_

Reference counter.


The documentation for this class was generated from the following files: