Typedefs | |
| typedef struct apr_reslist_t | apr_reslist_t |
| typedef apr_status_t(* | apr_reslist_constructor )(void **resource, void *params, apr_pool_t *pool) |
| typedef apr_status_t(* | apr_reslist_destructor )(void *resource, void *params, apr_pool_t *pool) |
Functions | |
| apr_status_t | apr_reslist_create (apr_reslist_t **reslist, int min, int smax, int hmax, apr_interval_time_t ttl, apr_reslist_constructor con, apr_reslist_destructor de, void *params, apr_pool_t *pool) |
| apr_status_t | apr_reslist_destroy (apr_reslist_t *reslist) |
| apr_status_t | apr_reslist_acquire (apr_reslist_t *reslist, void **resource) |
| apr_status_t | apr_reslist_release (apr_reslist_t *reslist, void *resource) |
| void | apr_reslist_timeout_set (apr_reslist_t *reslist, apr_interval_time_t timeout) |
| apr_uint32_t | apr_reslist_acquired_count (apr_reslist_t *reslist) |
| apr_status_t | apr_reslist_invalidate (apr_reslist_t *reslist, void *resource) |
| typedef struct apr_reslist_t apr_reslist_t |
Opaque resource list object
| apr_status_t apr_reslist_acquire | ( | apr_reslist_t * | reslist, | |
| void ** | resource | |||
| ) |
Retrieve a resource from the list, creating a new one if necessary. If we have met our maximum number of resources, we will block until one becomes available.
| apr_uint32_t apr_reslist_acquired_count | ( | apr_reslist_t * | reslist | ) |
Return the number of outstanding resources.
| reslist | The resource list. |
| apr_status_t apr_reslist_create | ( | apr_reslist_t ** | reslist, | |
| int | min, | |||
| int | smax, | |||
| int | hmax, | |||
| apr_interval_time_t | ttl, | |||
| apr_reslist_constructor | con, | |||
| apr_reslist_destructor | de, | |||
| void * | params, | |||
| apr_pool_t * | pool | |||
| ) |
Create a new resource list with the following parameters:
| reslist | An address where the pointer to the new resource list will be stored. | |
| min | Allowed minimum number of available resources. Zero creates new resources only when needed. | |
| smax | Resources will be destroyed to meet this maximum restriction as they expire. | |
| hmax | Absolute maximum limit on the number of total resources. | |
| ttl | If non-zero, sets the maximum amount of time in microseconds a resource may be available while exceeding the soft limit. | |
| con | Constructor routine that is called to create a new resource. | |
| de | Destructor routine that is called to destroy an expired resource. | |
| params | Passed to constructor and deconstructor | |
| pool | The pool from which to create this resource list. Also the same pool that is passed to the constructor and destructor routines. |
| apr_status_t apr_reslist_destroy | ( | apr_reslist_t * | reslist | ) |
Destroy the given resource list and all resources controlled by this list. FIXME: Should this block until all resources become available, or maybe just destroy all the free ones, or maybe destroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even though they might be in use by something else? Currently it will abort if there are resources that haven't classestroy them even t