ACE  6.3.3
Public Member Functions | List of all members
ACE_Lite_MMAP_Memory_Pool Class Reference

Make a ``lighter-weight'' memory pool based ACE_Mem_Map. More...

#include <MMAP_Memory_Pool.h>

Inheritance diagram for ACE_Lite_MMAP_Memory_Pool:
Inheritance graph
[legend]
Collaboration diagram for ACE_Lite_MMAP_Memory_Pool:
Collaboration graph
[legend]

Public Member Functions

 ACE_Lite_MMAP_Memory_Pool (const ACE_TCHAR *backing_store_name=0, const OPTIONS *options=0)
 Initialize the pool. More...
 
virtual ~ACE_Lite_MMAP_Memory_Pool (void)
 Destructor. More...
 
virtual int sync (size_t len, int flags=MS_SYNC)
 Overwrite the default sync behavior with no-op. More...
 
virtual int sync (int flags=MS_SYNC)
 Overwrite the default sync behavior with no-op. More...
 
virtual int sync (void *addr, size_t len, int flags=MS_SYNC)
 Overwrite the default sync behavior with no-op. More...
 
- Public Member Functions inherited from ACE_MMAP_Memory_Pool
 ACE_MMAP_Memory_Pool (const ACE_TCHAR *backing_store_name=0, const OPTIONS *options=0)
 Initialize the pool. More...
 
virtual ~ACE_MMAP_Memory_Pool (void)
 Destructor. More...
 
virtual void * init_acquire (size_t nbytes, size_t &rounded_bytes, int &first_time)
 Ask system for initial chunk of shared memory. More...
 
virtual void * acquire (size_t nbytes, size_t &rounded_bytes)
 
virtual int release (int destroy=1)
 Instruct the memory pool to release all of its resources. More...
 
virtual int protect (size_t len, int prot=PROT_RDWR)
 
virtual int protect (int prot=PROT_RDWR)
 
virtual int protect (void *addr, size_t len, int prot=PROT_RDWR)
 
virtual int seh_selector (void *)
 
virtual int remap (void *addr)
 
virtual void * base_addr (void) const
 Return the base address of this memory pool. More...
 
virtual void dump (void) const
 Dump the state of an object. More...
 
ACE_Mem_Map const & mmap (void) const
 Get reference to underlying ACE_Mem_Map object. More...
 
ACE_Mem_Mapmmap (void)
 Get reference to underlying ACE_Mem_Map object. More...
 
- Public Member Functions inherited from ACE_Event_Handler
virtual ~ACE_Event_Handler (void)
 Destructor is virtual to enable proper cleanup. More...
 
virtual ACE_HANDLE get_handle (void) const
 Get the I/O handle. More...
 
virtual void set_handle (ACE_HANDLE)
 Set the I/O handle. More...
 
virtual int priority (void) const
 
virtual void priority (int priority)
 Set the priority of the Event_Handler. More...
 
virtual int handle_input (ACE_HANDLE fd=ACE_INVALID_HANDLE)
 Called when input events occur (e.g., connection or data). More...
 
virtual int handle_output (ACE_HANDLE fd=ACE_INVALID_HANDLE)
 
virtual int handle_exception (ACE_HANDLE fd=ACE_INVALID_HANDLE)
 Called when an exceptional events occur (e.g., SIGURG). More...
 
virtual int handle_timeout (const ACE_Time_Value &current_time, const void *act=0)
 
virtual int handle_exit (ACE_Process *)
 Called when a process exits. More...
 
virtual int handle_close (ACE_HANDLE handle, ACE_Reactor_Mask close_mask)
 
virtual int handle_signal (int signum, siginfo_t *=0, ucontext_t *=0)
 
virtual int resume_handler (void)
 
virtual int handle_qos (ACE_HANDLE=ACE_INVALID_HANDLE)
 
virtual int handle_group_qos (ACE_HANDLE=ACE_INVALID_HANDLE)
 
virtual void reactor (ACE_Reactor *reactor)
 Set the event demultiplexors. More...
 
virtual ACE_Reactorreactor (void) const
 Get the event demultiplexors. More...
 
virtual ACE_Reactor_Timer_Interfacereactor_timer_interface (void) const
 Get only the reactor's timer related interface. More...
 
virtual Reference_Count add_reference (void)
 Increment reference count on the handler. More...
 
virtual Reference_Count remove_reference (void)
 Decrement reference count on the handler. More...
 
Reference_Counting_Policyreference_counting_policy (void)
 Current Reference_Counting_Policy. More...
 

Additional Inherited Members

- Public Types inherited from ACE_MMAP_Memory_Pool
typedef ACE_MMAP_Memory_Pool_Options OPTIONS
 
- Public Types inherited from ACE_Event_Handler
enum  {
  LO_PRIORITY = 0, HI_PRIORITY = 10, NULL_MASK = 0, READ_MASK = (1 << 0),
  WRITE_MASK = (1 << 1), EXCEPT_MASK = (1 << 2), ACCEPT_MASK = (1 << 3), CONNECT_MASK = (1 << 4),
  TIMER_MASK = (1 << 5), QOS_MASK = (1 << 6), GROUP_QOS_MASK = (1 << 7), SIGNAL_MASK = (1 << 8),
  ALL_EVENTS_MASK, RWE_MASK, DONT_CALL = (1 << 9)
}
 
enum  { ACE_EVENT_HANDLER_NOT_RESUMED = -1, ACE_REACTOR_RESUMES_HANDLER = 0, ACE_APPLICATION_RESUMES_HANDLER }
 
typedef long Reference_Count
 Reference count type. More...
 
- Static Public Member Functions inherited from ACE_Event_Handler
static ACE_THR_FUNC_RETURN read_adapter (void *event_handler)
 
static int register_stdin_handler (ACE_Event_Handler *eh, ACE_Reactor *reactor, ACE_Thread_Manager *thr_mgr, int flags=THR_DETACHED)
 
static int remove_stdin_handler (ACE_Reactor *reactor, ACE_Thread_Manager *thr_mgr)
 Performs the inverse of the register_stdin_handler() method. More...
 
- Public Attributes inherited from ACE_MMAP_Memory_Pool
 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks. More...
 
- Protected Types inherited from ACE_Event_Handler
typedef ACE_Atomic_Op< ACE_SYNCH_MUTEX, Reference_CountAtomic_Reference_Count
 Typedef for implementation of reference counting. More...
 
- Protected Member Functions inherited from ACE_MMAP_Memory_Pool
virtual size_t round_up (size_t nbytes)
 
virtual int commit_backing_store_name (size_t rounded_bytes, size_t &map_size)
 
virtual int map_file (size_t map_size)
 Memory map the file up to map_size bytes. More...
 
- Protected Member Functions inherited from ACE_Event_Handler
 ACE_Event_Handler (ACE_Reactor *=0, int priority=ACE_Event_Handler::LO_PRIORITY)
 Force ACE_Event_Handler to be an abstract base class. More...
 
- Protected Attributes inherited from ACE_MMAP_Memory_Pool
ACE_Mem_Map mmap_
 Memory-mapping object. More...
 
void * base_addr_
 
int use_fixed_addr_
 Must we use the base_addr_ or can we let mmap(2) select it? More...
 
int flags_
 Flags passed into ACE_OS::mmap(). More...
 
bool write_each_page_
 
size_t minimum_bytes_
 What the minimum bytes of the initial segment should be. More...
 
ACE_TCHAR backing_store_name_ [MAXPATHLEN+1]
 Name of the backing store where the shared memory pool is kept. More...
 
bool guess_on_fault_
 
LPSECURITY_ATTRIBUTES sa_
 Security attributes object, only used on NT. More...
 
mode_t file_mode_
 Protection mode for mmaped file. More...
 
bool install_signal_handler_
 Should we install a signal handler. More...
 
- Protected Attributes inherited from ACE_Event_Handler
Atomic_Reference_Count reference_count_
 Reference count. More...
 

Detailed Description

Make a ``lighter-weight'' memory pool based ACE_Mem_Map.

This implementation allows memory to be shared between processes. However, unlike the ACE_MMAP_Memory_Pool the sync methods are no-ops, which means that we don't pay for the price of flushing the memory to the backing store on every update. Naturally, this trades off increased performance for less reliability if the machine crashes.

Constructor & Destructor Documentation

ACE_Lite_MMAP_Memory_Pool::ACE_Lite_MMAP_Memory_Pool ( const ACE_TCHAR backing_store_name = 0,
const OPTIONS options = 0 
)

Initialize the pool.

ACE_Lite_MMAP_Memory_Pool::~ACE_Lite_MMAP_Memory_Pool ( void  )
virtual

Destructor.

Member Function Documentation

int ACE_Lite_MMAP_Memory_Pool::sync ( size_t  len,
int  flags = MS_SYNC 
)
virtual

Overwrite the default sync behavior with no-op.

Reimplemented from ACE_MMAP_Memory_Pool.

int ACE_Lite_MMAP_Memory_Pool::sync ( int  flags = MS_SYNC)
virtual

Overwrite the default sync behavior with no-op.

Reimplemented from ACE_MMAP_Memory_Pool.

int ACE_Lite_MMAP_Memory_Pool::sync ( void *  addr,
size_t  len,
int  flags = MS_SYNC 
)
virtual

Overwrite the default sync behavior with no-op.

Reimplemented from ACE_MMAP_Memory_Pool.


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