Package io.netty.util.internal
Class CleanerJava6
- java.lang.Object
-
- io.netty.util.internal.CleanerJava6
-
- All Implemented Interfaces:
Cleaner
final class CleanerJava6 extends java.lang.Object implements Cleaner
Allows to free directByteBufferby using Cleaner. This is encapsulated in an extra class to be able to usePlatformDependent0on Android without problems.For more details see #2604.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classCleanerJava6.CleanableDirectBufferImpl
-
Field Summary
Fields Modifier and Type Field Description private static MethodHandleCLEAN_METHODprivate static InternalLoggerlogger
-
Constructor Summary
Constructors Constructor Description CleanerJava6()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description CleanableDirectBufferallocate(int capacity)Create a directByteBufferand return it alongside its cleaning mechanism, in aCleanableDirectBuffer.voidfreeDirectBuffer(java.nio.ByteBuffer buffer)Deprecated.private static voidfreeDirectBuffer0(java.nio.ByteBuffer buffer)private static voidfreeDirectBufferPrivileged(java.nio.ByteBuffer buffer)private static voidfreeDirectBufferStatic(java.nio.ByteBuffer buffer)booleanhasExpensiveClean()Check if the clean operation is "relatively expensive".(package private) static booleanisSupported()-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.netty.util.internal.Cleaner
reallocate
-
-
-
-
Field Detail
-
CLEAN_METHOD
private static final MethodHandle CLEAN_METHOD
-
logger
private static final InternalLogger logger
-
-
Method Detail
-
isSupported
static boolean isSupported()
-
allocate
public CleanableDirectBuffer allocate(int capacity)
Description copied from interface:CleanerCreate a directByteBufferand return it alongside its cleaning mechanism, in aCleanableDirectBuffer.- Specified by:
allocatein interfaceCleaner- Parameters:
capacity- The desired capacity of the direct buffer.- Returns:
- The new
CleanableDirectBufferinstance.
-
freeDirectBuffer
@Deprecated public void freeDirectBuffer(java.nio.ByteBuffer buffer)
Deprecated.Description copied from interface:CleanerFree a directByteBufferif possible- Specified by:
freeDirectBufferin interfaceCleaner
-
hasExpensiveClean
public boolean hasExpensiveClean()
Description copied from interface:CleanerCheck if the clean operation is "relatively expensive". Expensive clean operations are fine for pooling allocators, but should be avoided for unpooled buffers.- Specified by:
hasExpensiveCleanin interfaceCleaner- Returns:
trueif this Cleaner has an expensive clean (i.e.CleanableDirectBuffer.clean()) operation.
-
freeDirectBufferStatic
private static void freeDirectBufferStatic(java.nio.ByteBuffer buffer)
-
freeDirectBufferPrivileged
private static void freeDirectBufferPrivileged(java.nio.ByteBuffer buffer)
-
freeDirectBuffer0
private static void freeDirectBuffer0(java.nio.ByteBuffer buffer) throws java.lang.Throwable- Throws:
java.lang.Throwable
-
-