We don't need jdk.internal.ref.Cleaner any more

Jeremy Manson jeremymanson at google.com
Sun Feb 7 19:01:18 UTC 2016


Hadoop seems to use sun.misc.Cleaner:

http://grepcode.com/file/repo1.maven.org/maven2/org.apache.hadoop/hadoop-common/2.7.1/org/apache/hadoop/crypto/CryptoStreamUtils.java

So you may want to keep it around transitionally (a la Unsafe).

Jeremy

On Sun, Feb 7, 2016 at 2:53 AM, Peter Levart <peter.levart at gmail.com> wrote:

> Hi,
>
> sun.misc.Cleaner has been moved to internal package jdk.internal.ref
> recently [1] to clean-up sun.misc namespace. But now that:
>
> - we have comparable public API (java.lang.ref.Cleaner & Cleanable) [2]
> - we have an internal shared java.lang.ref.Cleaner instance
> (jdk.internal.ref.CleanerFactory.cleaner())
> - sun.misc.Cleaner is not a special kind of Reference any more in the JVM
> [3]
>
> ...I think there's no reason to keep this special internal API any more.
> It can be replaced with public API.
>
> I propose to remove jdk.internal.ref.Cleaner class and replace its usages
> with java.lang.ref.Cleaner and friends [4].
>
> What do you say?
>
> Regards, Peter
>
>
> [1] https://bugs.openjdk.java.net/browse/JDK-8148117
> [2] https://bugs.openjdk.java.net/browse/JDK-8138696
> [3] https://bugs.openjdk.java.net/browse/JDK-8143847
> [4]
> http://cr.openjdk.java.net/~plevart/jdk9-dev/removeInternalCleaner/webrev.01/
>
>
>
>
>
>
>



More information about the core-libs-dev mailing list