Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

ACE_Shared_Memory_MM Class Reference

Shared memory wrapper based on MMAP. More...

#include <Shared_Memory_MM.h>

Inheritance diagram for ACE_Shared_Memory_MM

Inheritance graph
[legend]
Collaboration diagram for ACE_Shared_Memory_MM:

Collaboration graph
[legend]
List of all members.

Public Methods

 ACE_Shared_Memory_MM (void)
 Default constructor.

 ACE_Shared_Memory_MM (ACE_HANDLE handle, int length = -1, int prot = PROT_RDWR, int share = ACE_MAP_PRIVATE, char *addr = 0, off_t pos = 0)
 Constructor.

 ACE_Shared_Memory_MM (const ACE_TCHAR *file_name, int len = -1, int flags = O_RDWR | O_CREAT, int mode = ACE_DEFAULT_FILE_PERMS, int prot = PROT_RDWR, int share = ACE_MAP_SHARED, char *addr = 0, off_t pos = 0)
 Constructor.

int open (ACE_HANDLE handle, int length = -1, int prot = PROT_RDWR, int share = ACE_MAP_PRIVATE, char *addr = 0, off_t pos = 0)
 Open method.

int open (const ACE_TCHAR *file_name, int len = -1, int flags = O_RDWR | O_CREAT, int mode = ACE_DEFAULT_FILE_PERMS, int prot = PROT_RDWR, int share = ACE_MAP_SHARED, char *addr = 0, off_t pos = 0)
 Open method.

const ACE_TCHARfilename (void) const
 Return the name of file that is mapped (if any).

virtual int close (void)
 Close down the shared memory segment.

virtual int remove (void)
 Remove the shared memory segment and the underlying file.

virtual void* malloc (size_t size = 0)
 Create a new chuck of memory containing <size> bytes.

virtual int free (void *p)
 Free a chuck of memory allocated by .

virtual int get_segment_size (void) const
 Return the size of the shared memory segment.

virtual ACE_HANDLE get_id (void) const
 Return the ID of the shared memory segment (i.e., an ACE_HANDLE).

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


Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks.


Private Attributes

ACE_Mem_Map shared_memory_
 This version is implemented with memory-mapped files.


Detailed Description

Shared memory wrapper based on MMAP.

This class provides a very simple-minded shared memory manager. For more a powerful memory allocator please see .


Constructor & Destructor Documentation

ACE_Shared_Memory_MM::ACE_Shared_Memory_MM ( void )
 

Default constructor.

ACE_Shared_Memory_MM::ACE_Shared_Memory_MM ( ACE_HANDLE handle,
int length = -1,
int prot = PROT_RDWR,
int share = ACE_MAP_PRIVATE,
char * addr = 0,
off_t pos = 0 )
 

Constructor.

ACE_Shared_Memory_MM::ACE_Shared_Memory_MM ( const ACE_TCHAR * file_name,
int len = -1,
int flags = O_RDWR | O_CREAT,
int mode = ACE_DEFAULT_FILE_PERMS,
int prot = PROT_RDWR,
int share = ACE_MAP_SHARED,
char * addr = 0,
off_t pos = 0 )
 

Constructor.


Member Function Documentation

ACE_INLINE int ACE_Shared_Memory_MM::close ( void ) [virtual]
 

Close down the shared memory segment.

Reimplemented from ACE_Shared_Memory.

void ACE_Shared_Memory_MM::dump ( void ) const
 

Dump the state of an object.

ACE_INLINE const ACE_TCHAR * ACE_Shared_Memory_MM::filename ( void ) const
 

Return the name of file that is mapped (if any).

ACE_INLINE int ACE_Shared_Memory_MM::free ( void * p ) [virtual]
 

Free a chuck of memory allocated by .

Reimplemented from ACE_Shared_Memory.

ACE_INLINE ACE_HANDLE ACE_Shared_Memory_MM::get_id ( void ) const [virtual]
 

Return the ID of the shared memory segment (i.e., an ACE_HANDLE).

Reimplemented from ACE_Shared_Memory.

ACE_INLINE int ACE_Shared_Memory_MM::get_segment_size ( void ) const [virtual]
 

Return the size of the shared memory segment.

Reimplemented from ACE_Shared_Memory.

ACE_INLINE void * ACE_Shared_Memory_MM::malloc ( size_t size = 0 ) [virtual]
 

Create a new chuck of memory containing <size> bytes.

Reimplemented from ACE_Shared_Memory.

ACE_INLINE int ACE_Shared_Memory_MM::open ( const ACE_TCHAR * file_name,
int len = -1,
int flags = O_RDWR | O_CREAT,
int mode = ACE_DEFAULT_FILE_PERMS,
int prot = PROT_RDWR,
int share = ACE_MAP_SHARED,
char * addr = 0,
off_t pos = 0 )
 

Open method.

ACE_INLINE int ACE_Shared_Memory_MM::open ( ACE_HANDLE handle,
int length = -1,
int prot = PROT_RDWR,
int share = ACE_MAP_PRIVATE,
char * addr = 0,
off_t pos = 0 )
 

Open method.

ACE_INLINE int ACE_Shared_Memory_MM::remove ( void ) [virtual]
 

Remove the shared memory segment and the underlying file.

Reimplemented from ACE_Shared_Memory.


Member Data Documentation

ACE_Shared_Memory_MM::ACE_ALLOC_HOOK_DECLARE
 

Declare the dynamic allocation hooks.

ACE_Mem_Map ACE_Shared_Memory_MM::shared_memory_ [private]
 

This version is implemented with memory-mapped files.


The documentation for this class was generated from the following files:
Generated at Wed Nov 21 10:33:27 2001 for ACE by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000