Apache Portable Runtime
|
Data Structures | |
struct | apr_memnode_t |
Defines | |
#define | APR_MEMNODE_T_SIZE APR_ALIGN_DEFAULT(sizeof(apr_memnode_t)) |
#define | APR_ALLOCATOR_MAX_FREE_UNLIMITED 0 |
Typedefs | |
typedef struct apr_allocator_t | apr_allocator_t |
typedef struct apr_memnode_t | apr_memnode_t |
Functions | |
apr_status_t | apr_allocator_create (apr_allocator_t **allocator) |
void | apr_allocator_destroy (apr_allocator_t *allocator) |
apr_memnode_t * | apr_allocator_alloc (apr_allocator_t *allocator, apr_size_t size) |
void | apr_allocator_free (apr_allocator_t *allocator, apr_memnode_t *memnode) |
void | apr_allocator_owner_set (apr_allocator_t *allocator, apr_pool_t *pool) |
apr_pool_t * | apr_allocator_owner_get (apr_allocator_t *allocator) |
void | apr_allocator_max_free_set (apr_allocator_t *allocator, apr_size_t size) |
void | apr_allocator_mutex_set (apr_allocator_t *allocator, apr_thread_mutex_t *mutex) |
apr_thread_mutex_t * | apr_allocator_mutex_get (apr_allocator_t *allocator) |
#define APR_ALLOCATOR_MAX_FREE_UNLIMITED 0 |
Symbolic constants
#define APR_MEMNODE_T_SIZE APR_ALIGN_DEFAULT(sizeof(apr_memnode_t)) |
The base size of a memory node - aligned.
typedef struct apr_allocator_t apr_allocator_t |
the allocator structure
typedef struct apr_memnode_t apr_memnode_t |
the structure which holds information about the allocation
apr_memnode_t* apr_allocator_alloc | ( | apr_allocator_t * | allocator, |
apr_size_t | size | ||
) |
Allocate a block of mem from the allocator
allocator | The allocator to allocate from |
size | The size of the mem to allocate (excluding the memnode structure) |
apr_status_t apr_allocator_create | ( | apr_allocator_t ** | allocator | ) |
Create a new allocator
allocator | The allocator we have just created. |
void apr_allocator_destroy | ( | apr_allocator_t * | allocator | ) |
Destroy an allocator
allocator | The allocator to be destroyed |
void apr_allocator_free | ( | apr_allocator_t * | allocator, |
apr_memnode_t * | memnode | ||
) |
Free a list of blocks of mem, giving them back to the allocator. The list is typically terminated by a memnode with its next field set to NULL.
allocator | The allocator to give the mem back to |
memnode | The memory node to return |
void apr_allocator_max_free_set | ( | apr_allocator_t * | allocator, |
apr_size_t | size | ||
) |
Set the current threshold at which the allocator should start giving blocks back to the system.
allocator | The allocator the set the threshold on |
size | The threshold. 0 == unlimited. |
apr_thread_mutex_t* apr_allocator_mutex_get | ( | apr_allocator_t * | allocator | ) |
Get the mutex currently set for the allocator
allocator | The allocator |
void apr_allocator_mutex_set | ( | apr_allocator_t * | allocator, |
apr_thread_mutex_t * | mutex | ||
) |
Set a mutex for the allocator to use
allocator | The allocator to set the mutex for |
mutex | The mutex |
apr_pool_t* apr_allocator_owner_get | ( | apr_allocator_t * | allocator | ) |
Get the current owner of the allocator
allocator | The allocator to get the owner from |
void apr_allocator_owner_set | ( | apr_allocator_t * | allocator, |
apr_pool_t * | pool | ||
) |
Set the owner of the allocator
allocator | The allocator to set the owner for |
pool | The pool that is to own the allocator |