< prev index next >

src/java.base/share/classes/sun/nio/fs/NativeBuffer.java

Print this page

        

@@ -24,22 +24,24 @@
  */
 
 package sun.nio.fs;
 
 import jdk.internal.misc.Unsafe;
-import jdk.internal.ref.Cleaner;
+import jdk.internal.ref.CleanerFactory;
+
+import java.lang.ref.Cleaner;
 
 /**
  * A light-weight buffer in native memory.
  */
 
 class NativeBuffer {
     private static final Unsafe unsafe = Unsafe.getUnsafe();
 
     private final long address;
     private final int size;
-    private final Cleaner cleaner;
+    private final Cleaner.Cleanable cleanable;
 
     // optional "owner" to avoid copying
     // (only safe for use by thread-local caches)
     private Object owner;
 

@@ -54,11 +56,11 @@
     }
 
     NativeBuffer(int size) {
         this.address = unsafe.allocateMemory(size);
         this.size = size;
-        this.cleaner = Cleaner.create(this, new Deallocator(address));
+        this.cleanable = CleanerFactory.cleaner().register(this, new Deallocator(address));
     }
 
     void release() {
         NativeBuffers.releaseNativeBuffer(this);
     }

@@ -69,12 +71,12 @@
 
     int size() {
         return size;
     }
 
-    Cleaner cleaner() {
-        return cleaner;
+    Cleaner.Cleanable cleanable() {
+        return cleanable;
     }
 
     // not synchronized; only safe for use by thread-local caches
     void setOwner(Object owner) {
         this.owner = owner;
< prev index next >