[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

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