71 |
|
* <pre> |
72 |
|
* APR_POOL_DECLARE_ACCESSOR(file); |
73 |
|
* becomes: |
74 |
< |
* APR_DECLARE(apr_pool_t *) apr_file_pool_get(apr_file_t *ob); |
74 |
> |
* APR_DECLARE(apr_pool_t *) apr_file_pool_get(const apr_file_t *thefile); |
75 |
|
* </pre> |
76 |
|
* @remark Doxygen unwraps this macro (via doxygen.conf) to provide |
77 |
< |
* actual help for each specific occurance of apr_foo_pool_get. |
77 |
> |
* actual help for each specific occurrence of apr_foo_pool_get. |
78 |
|
* @remark the linkage is specified for APR. It would be possible to expand |
79 |
|
* the macros to support other linkages. |
80 |
|
*/ |
118 |
|
* |
119 |
|
* | | | | | x | | | | Pool owner checking. On each use of a |
120 |
|
* pool, check if the current thread is the |
121 |
< |
* pools owner. If not, abort(). In |
121 |
> |
* pool's owner. If not, abort(). In |
122 |
|
* combination with the verbose flag above, |
123 |
|
* it will output OWNER in such an event |
124 |
|
* prior to aborting. Use the debug |
125 |
|
* function apr_pool_owner_set() to switch |
126 |
< |
* a pools ownership. |
126 |
> |
* a pool's ownership. |
127 |
|
* |
128 |
|
* When no debug level was specified, assume general debug mode. |
129 |
< |
* If level 0 was specified, debugging is switched off |
129 |
> |
* If level 0 was specified, debugging is switched off. |
130 |
|
* </pre> |
131 |
|
*/ |
132 |
|
#if defined(APR_POOL_DEBUG) |
212 |
|
* @param newpool The pool we have just created. |
213 |
|
* @param abort_fn A function to use if the pool cannot allocate more memory. |
214 |
|
* @param allocator The allocator to use with the new pool. If NULL a |
215 |
< |
* new allocator will be crated with newpool as owner. |
215 |
> |
* new allocator will be created with the new pool as owner. |
216 |
|
* @remark An unmanaged pool is a special pool without a parent; it will |
217 |
|
* NOT be destroyed upon apr_terminate. It must be explicitly |
218 |
|
* destroyed by calling apr_pool_destroy, to prevent memory leaks. |
219 |
|
* Use of this function is discouraged, think twice about whether |
220 |
|
* you really really need it. |
221 |
+ |
* @warning Any child cleanups registered against the new pool, or |
222 |
+ |
* against sub-pools thereof, will not be executed during an |
223 |
+ |
* invocation of apr_proc_create(), so resources created in an |
224 |
+ |
* "unmanaged" pool hierarchy will leak to child processes. |
225 |
|
*/ |
226 |
|
APR_DECLARE(apr_status_t) apr_pool_create_unmanaged_ex(apr_pool_t **newpool, |
227 |
|
apr_abortfunc_t abort_fn, |
237 |
|
* @param file_line Where the function is called from. |
238 |
|
* This is usually APR_POOL__FILE_LINE__. |
239 |
|
* @remark Only available when APR_POOL_DEBUG is defined. |
240 |
< |
* Call this directly if you have you apr_pool_create_ex |
240 |
> |
* Call this directly if you have your apr_pool_create_ex |
241 |
|
* calls in a wrapper function and wish to override |
242 |
|
* the file_line argument to reflect the caller of |
243 |
|
* your wrapper function. If you do not have |
274 |
|
* @param file_line Where the function is called from. |
275 |
|
* This is usually APR_POOL__FILE_LINE__. |
276 |
|
* @remark Only available when APR_POOL_DEBUG is defined. |
277 |
< |
* Call this directly if you have you apr_pool_create_unmanaged_ex |
277 |
> |
* Call this directly if you have your apr_pool_create_unmanaged_ex |
278 |
|
* calls in a wrapper function and wish to override |
279 |
|
* the file_line argument to reflect the caller of |
280 |
|
* your wrapper function. If you do not have |
325 |
|
#endif |
326 |
|
|
327 |
|
/** |
328 |
< |
* Create a new pool. |
328 |
> |
* Create a new unmanaged pool. |
329 |
|
* @param newpool The pool we have just created. |
330 |
|
*/ |
331 |
|
#if defined(DOXYGEN) |
370 |
|
* @param file_line Where the function is called from. |
371 |
|
* This is usually APR_POOL__FILE_LINE__. |
372 |
|
* @remark Only available when APR_POOL_DEBUG is defined. |
373 |
< |
* Call this directly if you have you apr_pool_clear |
373 |
> |
* Call this directly if you have your apr_pool_clear |
374 |
|
* calls in a wrapper function and wish to override |
375 |
|
* the file_line argument to reflect the caller of |
376 |
|
* your wrapper function. If you do not have |
400 |
|
* @param file_line Where the function is called from. |
401 |
|
* This is usually APR_POOL__FILE_LINE__. |
402 |
|
* @remark Only available when APR_POOL_DEBUG is defined. |
403 |
< |
* Call this directly if you have you apr_pool_destroy |
403 |
> |
* Call this directly if you have your apr_pool_destroy |
404 |
|
* calls in a wrapper function and wish to override |
405 |
|
* the file_line argument to reflect the caller of |
406 |
|
* your wrapper function. If you do not have |
618 |
|
|
619 |
|
/** |
620 |
|
* Register a function to be called when a pool is cleared or destroyed |
621 |
< |
* @param p The pool register the cleanup with |
621 |
> |
* @param p The pool to register the cleanup with |
622 |
|
* @param data The data to pass to the cleanup function. |
623 |
|
* @param plain_cleanup The function to call when the pool is cleared |
624 |
|
* or destroyed |
634 |
|
/** |
635 |
|
* Register a function to be called when a pool is cleared or destroyed. |
636 |
|
* |
637 |
< |
* Unlike apr_pool_cleanup_register which register a cleanup |
638 |
< |
* that is called AFTER all subpools are destroyed this function register |
639 |
< |
* a function that will be called before any of the subpool is destoryed. |
637 |
> |
* Unlike apr_pool_cleanup_register which registers a cleanup |
638 |
> |
* that is called AFTER all subpools are destroyed, this function registers |
639 |
> |
* a function that will be called before any of the subpools are destroyed. |
640 |
|
* |
641 |
< |
* @param p The pool register the cleanup with |
641 |
> |
* @param p The pool to register the cleanup with |
642 |
|
* @param data The data to pass to the cleanup function. |
643 |
|
* @param plain_cleanup The function to call when the pool is cleared |
644 |
|
* or destroyed |