[Gc] Re-register an object for finalization after it has been finalized

Zach Saw zach.saw at gmail.com
Wed Oct 31 21:33:57 PST 2012


I've just started venturing into BoehmGC.

This is for a C#-like language, so all the object finalizers are registered with 

However, it is possible that the user's finalizer routine assigns its 'this' 
pointer to a globally accessible pointer var, thus making it accessible again
(e.g. see C#'s GC.ReRegisterForFinalize example) -- i.e. a resurrection.

The user's finalizer routine then registers this object for a second finalization
via GC_register_finalizer_no_order. However, this does not ever get triggered.

I've checked and made sure java_finalization is true.

Any help appreciated.

Thanks in advance.


More information about the Gc mailing list