1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158
|
.TH ACE_Local_Memory_Pool 3 "1 Dec 2001" "ACE" \" -*- nroff -*-
.ad l
.nh
.SH NAME
ACE_Local_Memory_Pool \- Make a memory pool that is based on C++ new/delete. This is useful for integrating existing components that use new/delete into the \fBACE\fR Malloc scheme...
.SH SYNOPSIS
.br
.PP
\fC#include <Memory_Pool.h>\fR
.PP
.SS Public Types
.in +1c
.ti -1c
.RI "typedef \fBACE_Local_Memory_Pool_Options\fR \fBOPTIONS\fR"
.br
.in -1c
.SS Public Methods
.in +1c
.ti -1c
.RI "\fBACE_Local_Memory_Pool\fR (const \fBACE_TCHAR\fR *backing_store_name = 0, const \fBOPTIONS\fR *options = 0)"
.br
.RI "\fIInitialize the pool.\fR"
.ti -1c
.RI "virtual \fB~ACE_Local_Memory_Pool\fR (void)"
.br
.ti -1c
.RI "virtual void* \fBinit_acquire\fR (size_t nbytes, size_t &rounded_bytes, int &first_time)"
.br
.RI "\fIAsk system for initial chunk of local memory.\fR"
.ti -1c
.RI "virtual void* \fBacquire\fR (size_t nbytes, size_t &rounded_bytes)"
.br
.RI "\fIAcquire at least NBYTES from the memory pool. ROUNDED_BYTES is the actual number of bytes allocated.\fR"
.ti -1c
.RI "virtual int \fBrelease\fR (void)"
.br
.RI "\fIInstruct the memory pool to release all of its resources.\fR"
.ti -1c
.RI "virtual int \fBsync\fR (\fBssize_t\fR len = -1, int flags = MS_SYNC)"
.br
.ti -1c
.RI "virtual int \fBsync\fR (void *addr, size_t len, int flags = MS_SYNC)"
.br
.RI "\fISync <len> bytes of the memory region to the backing store starting at .\fR"
.ti -1c
.RI "virtual int \fBprotect\fR (\fBssize_t\fR len = -1, int prot = PROT_RDWR)"
.br
.ti -1c
.RI "virtual int \fBprotect\fR (void *addr, size_t len, int prot = PROT_RDWR)"
.br
.RI "\fIChange the protection of the pages of the mapped region to <prot> starting at up to <len> bytes.\fR"
.ti -1c
.RI "virtual int \fBseh_selector\fR (void *)"
.br
.ti -1c
.RI "virtual int \fBremap\fR (void *addr)"
.br
.ti -1c
.RI "virtual void \fBdump\fR (void) const"
.br
.RI "\fIDump the state of an object.\fR"
.in -1c
.SS Public Attributes
.in +1c
.ti -1c
.RI "\fBACE_ALLOC_HOOK_DECLARE\fR"
.br
.RI "\fIDeclare the dynamic allocation hooks.\fR"
.in -1c
.SS Protected Methods
.in +1c
.ti -1c
.RI "virtual size_t \fBround_up\fR (size_t nbytes)"
.br
.in -1c
.SS Protected Attributes
.in +1c
.ti -1c
.RI "\fBACE_Unbounded_Set\fR<char *> \fBallocated_chunks_\fR"
.br
.RI "\fIList of memory that we have allocated.\fR"
.in -1c
.SH DETAILED DESCRIPTION
.PP
Make a memory pool that is based on C++ new/delete. This is useful for integrating existing components that use new/delete into the \fBACE\fR Malloc scheme...
.PP
.SH MEMBER TYPEDEF DOCUMENTATION
.PP
.SS typedef \fBACE_Local_Memory_Pool_Options\fR ACE_Local_Memory_Pool::OPTIONS
.PP
.SH CONSTRUCTOR & DESTRUCTOR DOCUMENTATION
.PP
.SS ACE_Local_Memory_Pool::ACE_Local_Memory_Pool (const \fBACE_TCHAR\fR * backing_store_name = 0, const \fBOPTIONS\fR * options = 0)
.PP
Initialize the pool.
.PP
.SS virtual ACE_Local_Memory_Pool::~ACE_Local_Memory_Pool (void)\fC [virtual]\fR
.PP
.SH MEMBER FUNCTION DOCUMENTATION
.PP
.SS void * ACE_Local_Memory_Pool::acquire (size_t nbytes, size_t & rounded_bytes)\fC [virtual]\fR
.PP
Acquire at least NBYTES from the memory pool. ROUNDED_BYTES is the actual number of bytes allocated.
.PP
.SS void ACE_Local_Memory_Pool::dump (void) const\fC [virtual]\fR
.PP
Dump the state of an object.
.PP
.SS void * ACE_Local_Memory_Pool::init_acquire (size_t nbytes, size_t & rounded_bytes, int & first_time)\fC [virtual]\fR
.PP
Ask system for initial chunk of local memory.
.PP
.SS int ACE_Local_Memory_Pool::protect (void * addr, size_t len, int prot = PROT_RDWR)\fC [virtual]\fR
.PP
Change the protection of the pages of the mapped region to <prot> starting at up to <len> bytes.
.PP
.SS int ACE_Local_Memory_Pool::protect (\fBssize_t\fR len = -1, int prot = PROT_RDWR)\fC [virtual]\fR
.PP
Change the protection of the pages of the mapped region to <prot> starting at <this->base_addr_> up to <len> bytes. If <len> == -1 then change protection of all pages in the mapped region.
.SS int ACE_Local_Memory_Pool::release (void)\fC [virtual]\fR
.PP
Instruct the memory pool to release all of its resources.
.PP
.SS int ACE_Local_Memory_Pool::remap (void * addr)\fC [virtual]\fR
.PP
Try to extend the virtual address space so that is now covered by the address mapping. Always returns 0 since we can't remap a local memory pool.
.SS virtual size_t ACE_Local_Memory_Pool::round_up (size_t nbytes)\fC [protected, virtual]\fR
.PP
.SS int ACE_Local_Memory_Pool::seh_selector (void *)\fC [virtual]\fR
.PP
Win32 Structural exception selector. The return value decides how to handle memory pool related structural exceptions. Returns 1, 0, or , -1.
.SS int ACE_Local_Memory_Pool::sync (void * addr, size_t len, int flags = MS_SYNC)\fC [virtual]\fR
.PP
Sync <len> bytes of the memory region to the backing store starting at .
.PP
.SS int ACE_Local_Memory_Pool::sync (\fBssize_t\fR len = -1, int flags = MS_SYNC)\fC [virtual]\fR
.PP
Sync <len> bytes of the memory region to the backing store starting at <this->base_addr_>. If <len> == -1 then sync the whole region.
.SH MEMBER DATA DOCUMENTATION
.PP
.SS ACE_Local_Memory_Pool::ACE_ALLOC_HOOK_DECLARE
.PP
Declare the dynamic allocation hooks.
.PP
.SS \fBACE_Unbounded_Set\fR< char *> ACE_Local_Memory_Pool::allocated_chunks_\fC [protected]\fR
.PP
List of memory that we have allocated.
.PP
.SH AUTHOR
.PP
Generated automatically by Doxygen for ACE from the source code.
|