[squeak-dev] Finalization enhancement

Igor Stasenko siguctua at gmail.com
Mon Feb 22 15:30:44 UTC 2010


On 21 February 2010 19:18, Levente Uzonyi <leves at elte.hu> wrote:
> Hi,
>
> since WeakRegistry is refactored, there's an easy way to enhance
> finalization performance, by changing WeakRegistry >> #installFinalizer's
> implementation to
>
> installFinalizer
>
>        valueDictionary finalizer: #finalize
>
> This means that the object finalizers (executors) are not collected, but are
> immediately evaluated whenever the WeakRegistry finds them. Therefore these
> objects live for a shorter time and need less administration.
> But there's a side effect. Currently only the WeakArray finalization process
> can evaluate the finalizers'. If we change this, any process which accesses
> the WeakRegistry may evaluate finalizers.
>
> I can't think of any problem with the side effect, but I may be wrong.
> Should we change the current behavior?
>
>

My 2c.
I think, if one uses WeakRegistry, he should rely on its behavior. And
if he using own finalization shemes - then he won't be using
WeakRegistry anyways. So, i think it is safe to use optimization
(though i'm not looked at the code).

> Cheers,
> Levente
>
>



-- 
Best regards,
Igor Stasenko AKA sig.



More information about the Squeak-dev mailing list