< prev index next >
src/java.base/share/classes/sun/nio/fs/NativeBuffer.java
Print this page
@@ -24,24 +24,22 @@
*/
package sun.nio.fs;
import jdk.internal.misc.Unsafe;
-import jdk.internal.ref.CleanerFactory;
-
-import java.lang.ref.Cleaner;
+import jdk.internal.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.Cleanable cleanable;
+ private final Cleaner cleaner;
// optional "owner" to avoid copying
// (only safe for use by thread-local caches)
private Object owner;
@@ -56,11 +54,11 @@
}
NativeBuffer(int size) {
this.address = unsafe.allocateMemory(size);
this.size = size;
- this.cleanable = CleanerFactory.cleaner().register(this, new Deallocator(address));
+ this.cleaner = Cleaner.create(this, new Deallocator(address));
}
void release() {
NativeBuffers.releaseNativeBuffer(this);
}
@@ -72,11 +70,11 @@
int size() {
return size;
}
void free() {
- cleanable.clean();
+ cleaner.clean();
}
// not synchronized; only safe for use by thread-local caches
void setOwner(Object owner) {
this.owner = owner;
< prev index next >