RFR: 8305083: Remove finalize() from test/hotspot/jtreg/vmTestbase/nsk/share/ and /jpda that are used in serviceability/dcmd/framework tests

Chris Plummer cjplummer at openjdk.org
Wed Apr 12 19:18:31 UTC 2023


On Tue, 11 Apr 2023 08:16:29 GMT, Afshin Zafari <duke at openjdk.org> wrote:

> The `finalize()` method is removed from base classes/interfaces and are replaced by a Cleaner callback..

The interaction of Finalizable, FinalizableObject, Finalizer, and FinalizerThread is hard to follow, so it is hard to tell if your changes still honor the needed "finalization". Did you figure this all out? Perhaps you can summarize how it worked properly when using finalize(), and why it continues to work after your changes. I'm especially suspicious of your removal of the finalize() call in FinalizableObject. I don't see how this is made up for elsewhere in your changes. Is it because finalizeAtExit() is always overridden to do the right thing? If so, perhaps it should be made abstract in FinalizableObject.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/13420#issuecomment-1505796926


More information about the serviceability-dev mailing list