[gclist] A Java question.

Charles Fiterman cef@geodesic.com
Tue, 25 Mar 1997 12:47:42 -0600


>All Java VM's must call finalizers and all as far as I know do.
>finalize() is used to free up bitmaps, file references, and other
>non-Java-related "garbage". I think you may be talking about
>the fact that once a finalizer has been called once, it will not
>be called again. So if you create a reference to the object being
>finalized in the finalizer, you essentially create a zombie object
>and finalize() will not be called the next time it tries to gc that
>object. Most of the time this is not a problem.

I have nothing against zombies but am worried about the zombie getting
freed or any other pointer to a free object as those would allow me
to create a virus. The point of Java is that the type system prevents
the creation of viruses. There is also the question of finalizer order.


			-  
Charles Fiterman		Geodesic Systems
414 North Orleans Suite 410	Phone 312 832 1221 x223
Chicago IL 60610-4418		FAX   312 832 1230
				http://www.geodesic.com

A computer language without garbage collection
  is like a city without garbage collection.