ACE  6.0.6
Public Types | Public Member Functions | Public Attributes | Private Member Functions
ACE_MMAP_Memory_Pool_Options Class Reference

Helper class for MMAP Memory Pool constructor options. More...

#include <MMAP_Memory_Pool.h>

List of all members.

Public Types

enum  { FIRSTCALL_FIXED = 0, ALWAYS_FIXED = 1, NEVER_FIXED = 2 }

Public Member Functions

 ACE_MMAP_Memory_Pool_Options (const void *base_addr=ACE_DEFAULT_BASE_ADDR, int use_fixed_addr=ALWAYS_FIXED, bool write_each_page=true, size_t minimum_bytes=0, u_int flags=0, bool guess_on_fault=true, LPSECURITY_ATTRIBUTES sa=0, mode_t file_mode=ACE_DEFAULT_FILE_PERMS, bool unique_=false, bool install_signal_handler=true)
 Constructor.

Public Attributes

const void * base_addr_
 Base address of the memory-mapped backing store.
int use_fixed_addr_
bool write_each_page_
size_t minimum_bytes_
 What the minimim bytes of the initial segment should be.
u_int flags_
 Any special flags that need to be used for mmap.
bool guess_on_fault_
LPSECURITY_ATTRIBUTES sa_
 Pointer to a security attributes object. Only used on NT.
mode_t file_mode_
 File mode for mmaped file, if it is created.
bool unique_
 Do we want an unique backing store name?
bool install_signal_handler_
 Should we install a signal handler.

Private Member Functions

 ACE_MMAP_Memory_Pool_Options (const ACE_MMAP_Memory_Pool_Options &)
ACE_MMAP_Memory_Pool_Optionsoperator= (const ACE_MMAP_Memory_Pool_Options &)

Detailed Description

Helper class for MMAP Memory Pool constructor options.

This should be a nested class, but that breaks too many compilers.


Member Enumeration Documentation

anonymous enum
Enumerator:
FIRSTCALL_FIXED 

The base address from the first call to mmap will be used for subsequent calls to mmap.

ALWAYS_FIXED 

The base address specified in base_addr will be used in all calls to mmap.

NEVER_FIXED 

The base address will be selected by the OS for each call to mmap. Caution should be used with this mode since a call that requires the backing store to grow may change pointers that are cached by the application.


Constructor & Destructor Documentation

ACE_MMAP_Memory_Pool_Options::ACE_MMAP_Memory_Pool_Options ( const void *  base_addr = ACE_DEFAULT_BASE_ADDR,
int  use_fixed_addr = ALWAYS_FIXED,
bool  write_each_page = true,
size_t  minimum_bytes = 0,
u_int  flags = 0,
bool  guess_on_fault = true,
LPSECURITY_ATTRIBUTES  sa = 0,
mode_t  file_mode = ACE_DEFAULT_FILE_PERMS,
bool  unique_ = false,
bool  install_signal_handler = true 
)

Constructor.

ACE_MMAP_Memory_Pool_Options::ACE_MMAP_Memory_Pool_Options ( const ACE_MMAP_Memory_Pool_Options ) [private]

Member Function Documentation

ACE_MMAP_Memory_Pool_Options& ACE_MMAP_Memory_Pool_Options::operator= ( const ACE_MMAP_Memory_Pool_Options ) [private]

Member Data Documentation

Base address of the memory-mapped backing store.

File mode for mmaped file, if it is created.

Any special flags that need to be used for mmap.

Try to remap without knowing the faulting address. This parameter is ignored on platforms that know the faulting address (UNIX with SI_ADDR and Win32).

Should we install a signal handler.

What the minimim bytes of the initial segment should be.

LPSECURITY_ATTRIBUTES ACE_MMAP_Memory_Pool_Options::sa_

Pointer to a security attributes object. Only used on NT.

Do we want an unique backing store name?

Determines whether we set base_addr_ or if mmap(2) selects it FIRSTCALL_FIXED The base address from the first call to mmap will be used for subsequent calls to mmap ALWAYS_FIXED The base address specified in base_addr will be used in all calls to mmap. NEVER_FIXED The base address will be selected by the OS for each call to mmap. Caution should be used with this mode since a call that requires the backing store to grow may change pointers that are cached by the application.

Should each page be written eagerly to avoid surprises later on?


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines