> I've put in checks in our code to check is things are getting finalized... It does
> happen (eventually)
> 
> To force cleanups, I rely on the following:
> 
> 1.    add a void kill()   in all heavy classes.  make it  delete files, close
> sockets... etc.

I would use the word "dispose()" for this -- kill is a transitive verb
and implies that this object is killing some other object.

> 2.    In void finalize()  I make all references point to null

Do you have any proof that this is a good idea?  Seems like a bad one
to me...

> 3.    Don't forget to do a super.finalize() in all subclasses at the last line in
> void finalize()

Sound good.

M.


Reply via email to