Class Ref.DirectBufferRef<T extends sun.nio.ch.DirectBuffer>
- java.lang.Object
-
- org.apache.cassandra.utils.concurrent.Ref.DirectBufferRef<T>
-
- All Implemented Interfaces:
RefCounted<T>
,sun.nio.ch.DirectBuffer
public static final class Ref.DirectBufferRef<T extends sun.nio.ch.DirectBuffer> extends java.lang.Object implements RefCounted<T>, sun.nio.ch.DirectBuffer
A version ofRef
for objects that implementDirectBuffer
.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.cassandra.utils.concurrent.RefCounted
RefCounted.Tidy
-
-
Constructor Summary
Constructors Constructor Description DirectBufferRef(T referent, RefCounted.Tidy tidy)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description long
address()
java.lang.Object
attachment()
jdk.internal.ref.Cleaner
cleaner()
T
get()
Ref<T>
ref()
void
release()
Ref<T>
tryRef()
-
-
-
Constructor Detail
-
DirectBufferRef
public DirectBufferRef(T referent, RefCounted.Tidy tidy)
-
-
Method Detail
-
address
public long address()
- Specified by:
address
in interfacesun.nio.ch.DirectBuffer
-
attachment
public java.lang.Object attachment()
- Specified by:
attachment
in interfacesun.nio.ch.DirectBuffer
-
cleaner
public jdk.internal.ref.Cleaner cleaner()
- Specified by:
cleaner
in interfacesun.nio.ch.DirectBuffer
-
tryRef
public Ref<T> tryRef()
- Specified by:
tryRef
in interfaceRefCounted<T extends sun.nio.ch.DirectBuffer>
- Returns:
- the a new Ref() to the managed object, incrementing its refcount, or null if it is already released
-
ref
public Ref<T> ref()
- Specified by:
ref
in interfaceRefCounted<T extends sun.nio.ch.DirectBuffer>
-
release
public void release()
-
get
public T get()
-
-