NAME
ACE_Shared_Memory_SV -
Shared memory wrapper based on System V shared memory.
SYNOPSIS
#include <ace/Shared_Memory_SV.h>
class ACE_Shared_Memory_SV : public ACE_Shared_Memory
{
public:
enum { ACE_CREATE = IPC_CREAT, ACE_OPEN = 0 };
ACE_Shared_Memory_SV (void);
ACE_Shared_Memory_SV (
key_t id,
int length,
int create = ACE_Shared_Memory_SV::ACE_OPEN,
int perms = ACE_DEFAULT_PERMS,
void *addr = 0,
int flags = 0
);
int open (
key_t id,
int length,
int create = ACE_Shared_Memory_SV::ACE_OPEN,
int perms = ACE_DEFAULT_PERMS,
void *addr = 0,
int flags = 0
);
virtual int close (void);
virtual int remove (void);
virtual void *malloc (size_t = 0);
virtual int free (void *p);
virtual int get_segment_size (void) const;
virtual ACE_HANDLE get_id (void) const;
void dump (void) const;
ACE_ALLOC_HOOK_DECLARE;
private:
ACE_SV_Shared_Memory shared_memory_;
};
Initialization and termination methods.
ACE_Shared_Memory_SV (void);
ACE_Shared_Memory_SV (
key_t id,
int length,
int create = ACE_Shared_Memory_SV::ACE_OPEN,
int perms = ACE_DEFAULT_PERMS,
void *addr = 0,
int flags = 0
);
int open (
key_t id,
int length,
int create = ACE_Shared_Memory_SV::ACE_OPEN,
int perms = ACE_DEFAULT_PERMS,
void *addr = 0,
int flags = 0
);
virtual int close (void);
Close down the shared memory segment.
virtual int remove (void);
Remove the shared memory segment and the underlying file.
Allocation and deallocation methods.
virtual void *malloc (size_t = 0);
Create a new chuck of memory containing size bytes.
virtual int free (void *p);
Free a chuck of memory allocated by ACE_Shared_Memory_SV::malloc.
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., a System V
shared memory internal id).
void dump (void) const;
Dump the state of an object.
ACE_ALLOC_HOOK_DECLARE;
Declare the dynamic allocation hooks.
AUTHOR
Doug Schmidt
LIBRARY
ace