apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ruediger Pluem <rpl...@apache.org>
Subject Re: [PATCH] tweaks to apr_reslist_create documentation
Date Thu, 23 Sep 2010 17:23:29 GMT


On 09/23/2010 02:13 PM, Jeff Trawick wrote:
> I'm having a time coming to grips with how mod_proxy's use of this relates
> to connections and how to document appropriately, and even with the
> usefulness of some advertised semantics of apr_reslist itself.
> 
> I guess at one time ttl was not respected except for the smax concept, that
> was useless for proxy or some other user, then reslist was modified so that
> ttl was checked during apr_reslist_acquire too; that left smax as only an
> obscure object management control -- when those unusable resources are
> garbage collected, and how much time should be spent on garbage collection.
> 
> IOW, since a resource exceeding ttl is completely unusable and enforced
> completely by apr_reslist_acquire(), the only reason to have smax is to
> force some amount of garbage collection during reslist maintenance, and
> furthermore the only reason not to set smax to a very low value (perhaps
> just eliminating the parameter from the API and always performing full
> garbage collection) is to avoid spending too much time cleaning up unusable
> resources during one maintenance cycle.
> 
> Index: include/apr_reslist.h
> ===================================================================
> --- include/apr_reslist.h       (revision 987633)
> +++ include/apr_reslist.h       (working copy)
> @@ -69,11 +69,13 @@
>   *                list will be stored.
>   * @param min Allowed minimum number of available resources. Zero
>   *            creates new resources only when needed.
> - * @param smax Resources will be destroyed to meet this maximum
> - *             restriction as they expire.
> + * @param smax Resources will be destroyed during reslist maintenance to
> + *             meet this maximum restriction as they expire (reach their
> ttl).
>   * @param hmax Absolute maximum limit on the number of total resources.
> - * @param ttl If non-zero, sets the maximum amount of time in microseconds
> a
> - *            resource may be available while exceeding the soft limit.
> + * @param ttl If non-zero, sets the maximum amount of time in microseconds
> an
> + *            unused resource is valid.  Any resource which has exceeded
> this
> + *            time will be destroyed, either when encountered by
> + *            apr_reslist_acquire() or during reslist maintenance.
>   * @param con Constructor routine that is called to create a new resource.
>   * @param de Destructor routine that is called to destroy an expired
> resource.
>   * @param params Passed to constructor and deconstructor
> 

+1. Looks good to me.

Regards

RĂ¼diger

Mime
View raw message