ly on them for cleanup.
 Note also that finalizers are run on a single VM-wide finalizer thread,
 so doing blocking work in a finalizer is a bad idea. A finalizer is usually only necessary
 for a class that has a native peer and needs to call a native method to destroy that peer.
 Even then, it's better to provide an explicit <code>close</code> method (and implement
 <code><a href="../../../reference/java/io/Closeable.html">Closeable</a></code>), and insist that callers manually dispose of instances. This
 