On 1/21/06, Zbigniew <[EMAIL PROTECTED]> wrote:
> I've thought about this some more, and I guess I don't fully
> understand it after all.  Given a pending-finalizer buffer size of
> XXX, using the -:fXXX option, simply having more than XXX live
> finalizers forces a major GC every time a new finalizer is created.
> None of these finalizers are pending, so why does the pending buffer
> size come into play?  Is this simply a pathological case which cannot
> be fixed without increasing the pending buffer?  Are we constrained by
> the total number of finalizers irrespective of how many are live or
> pending invocation?

The runtime system doesn't know at that time how many of the
finalizers will become free after the next GC, so it conservatively
forces a GC in the hope of releasing some of them.


cheers,
felix


_______________________________________________
Chicken-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/chicken-users

Reply via email to