On Wednesday 19 September 2001 11:37 am, William A. Rowe, Jr. wrote:
> From: "Greg Stein" <[EMAIL PROTECTED]>
> Sent: Wednesday, September 19, 2001 1:26 PM
>
> > On Wed, Sep 19, 2001 at 01:52:12PM -0400, Rodent of Unusual Size wrote:
> > > Greg Stein wrote:
> > > > It isn't a bug. Cleanups are for just wrapping things up,
> > > > not doing work.
> > >
> > > If that's the authoritative answer, then we need to provide
> > > a supported way for 'doing work' at cleanup time.
> > >
> > > > You might not even be able to open and use that file if
> > > > your pool is n the process of being destroyed.
> > >
> > > That sounds like utter tripe.  If you can't depend on the
> > > pool lasting at least until your cleanup routine ends,
> > > then the whole cleanup mechanism is seriously borked.  AFAIK
> > > it isn't, so I think the above assertion *is*.
> >
> > The problem is cross-dependency between the cleanup actions. One can
> > destroy something another cleanup needs. If you restrict their actions to
> > "simple" things, then the cross-dependencies are (hopefully!) removed.
>
> Really?  No.  Cleanups are run as a LIFO stack.  Anything that existed when
> something was added to the pool must exist when that something is removed
> from the pool.
>
> IMHO, we need to make subpool scrubbing an actual LIFO cleanup as well, so
> that will also be true of subpools.
>
> Considering how we use pools for dynamic libraries and the rest, it's
> absolutely vital that they are unspun from the pool in LIFO order of their
> creation.

I agree with Bill.  Having reviewed the code quite deeply yesterday, pool
cleanups follow a very clean rule, and registering a cleanup from within
a cleanup will always work if done correctly.  If you have data in a pool
when the cleanup is registered, it is gauranteed to be there when the cleanup
is run.

Anything else is completely broken.

Ryan

______________________________________________________________
Ryan Bloom                              [EMAIL PROTECTED]
Covalent Technologies                   [EMAIL PROTECTED]
--------------------------------------------------------------

Reply via email to