rspec/rules/S2151/description.adoc
2021-10-13 15:02:16 +00:00

13 lines
554 B
Plaintext

Running finalizers on JVM exit is disabled by default. It can be enabled with `System.runFinalizersOnExit` and `Runtime.runFinalizersOnExit`, but both methods are deprecated because they are inherently unsafe.
According to the Oracle Javadoc:
____
It may result in finalizers being called on live objects while other threads are concurrently manipulating those objects, resulting in erratic behavior or deadlock.
____
If you really want to execute something when the virtual machine begins its shutdown sequence, you should attach a shutdown hook.