RFR: 8197812: (ref) Data race in Finalizer
Martin Buchholz
martinrb at google.com
Wed Feb 14 21:54:04 UTC 2018
Indeed I had suppressed all memory of runFinalizersOnExit. (Sorry about
that.)
I support removing it in jdk11.
Mandy, would you like to file the CSR?
On Wed, Feb 14, 2018 at 1:15 PM, mandy chung <mandy.chung at oracle.com> wrote:
>
>
> On 2/14/18 1:58 AM, Peter Levart wrote:
>
>
> I take back this claim. Of course the the following race is possible:
>
> - Thread1: calls runAllFinalizers and takes a Finalizer from 'unprocessed'
> list.
> - Thread2: takee the same Finalizer instance from ReferenceQueue and calls
> runFinalizer()
> - Thread1: calls runFinalizer() with the same instance for the 2nd time
> now.
>
>
> runAllFinalizers is invoked during shutdown when
> System.runFinalizersOnExit has been called.
>
> I have been wanting to remove System::runFinalizersOnExit [1] which is the
> culprit of causing this complicated handling. Probably time to remove it
> in 11?
>
> Mandy
>
> [1] http://mail.openjdk.java.net/pipermail/core-libs-dev/2015-
> January/031041.html
>
More information about the core-libs-dev
mailing list