[gclist] Precise GC's performance

David Bruce dib@signal.dra.hmg.gb
Tue, 5 Mar 1996 10:43:03 GMT


"Darius Blasband" <darius@phidani.be> wrote:
(   By the way, I have been looking to see how to integrate a conservative GC
 )  in YAFL and I found a potential problem: YAFL supports a user-redefinable
(   KILL method, which is invoked before the object is deallocated. This method 
 )  is mainly used to free system resources (Widgets, pipes, etc...) attached to 
(   YAFL objects when it is deallocated. Ultimately, the KILL method might even
 )  cancel the deallocation, by setting a valid reference to the object it is
(   being applied to. One can say that KILL is an asynchronous destructor.
 )
(   Does anyone have any idea on how to implement this KILL method on top of
 )  a conservative GC ? I guess it must be possible, but I don't know how.

I don't know about conservative GC in particular, but Martin Atkins'
PhD thesis (``Implementation Techniques for Object-Oriented Systems'',
University of York Department of Computer Science, June 1989)
discusses how to implement destroy methods (in two alternative semantics,
depending on whether an unreferenced object can resurrect itself or not)
both directly and in terms of weak pointers.


    David Bruce
----
post:  DRA Malvern, St Andrews Road, Malvern, Worcestershire WR14 3PS, ENGLAND
email: dib@dra.hmg.gb   **  WWW[tmp]: http://siwg.dra.hmg.gb/commerce/malvern
phone: +44 1684 895112  **  fax: +44 1684 894389 or 894540  **  telex: 339747