Generated on Thu Jul 6 07:06:56 2006 for Gecode by doxygen 1.4.7

Space-memory management
[Memory management]

Collaboration diagram for Space-memory management:


Namespaces

namespace  Gecode::Memory::Config
 Parameters defining memory management policy for spaces.

Classes

class  Gecode::FreeList
 Base-class for freelist-managed objects. More...

Functions

void * Gecode::Space::alloc (size_t)
 Allocate memory on space heap.
void Gecode::Space::reuse (void *, size_t)
 Attempt to reuse memory previously allocated with alloc.
template<size_t >
void * Gecode::Space::fl_alloc (void)
 Allocate from freelist-managed memory.
template<size_t >
void Gecode::Space::fl_dispose (FreeList *f, FreeList *l)
 Return freelist-managed memory to freelist.
size_t Gecode::Space::allocated (void) const
 Return how much heap memory is allocated by this space.
size_t Gecode::Space::cached (void) const
 Return how much memory is used by caches for actors.


Function Documentation

void * Gecode::Space::alloc ( size_t   )  [inline, inherited]

Allocate memory on space heap.

Definition at line 918 of file core.icc.

void Gecode::Space::reuse ( void *  ,
size_t   
) [inline, inherited]

Attempt to reuse memory previously allocated with alloc.

Definition at line 922 of file core.icc.

template<size_t s>
void * Gecode::Space::fl_alloc ( void   )  [inline, inherited]

Allocate from freelist-managed memory.

Definition at line 928 of file core.icc.

template<size_t s>
void Gecode::Space::fl_dispose ( FreeList f,
FreeList l 
) [inline, inherited]

Return freelist-managed memory to freelist.

The first list element to be retuned is f, the last is l.

Definition at line 933 of file core.icc.

size_t Gecode::Space::allocated ( void   )  const [inline, inherited]

Return how much heap memory is allocated by this space.

Note that is excludes the memory for the space object itself.

Definition at line 938 of file core.icc.

size_t Gecode::Space::cached ( void   )  const [inherited]

Return how much memory is used by caches for actors.

Definition at line 78 of file core.cc.