Class CleanerJava24Linker

java.lang.Object
io.netty.util.internal.CleanerJava24Linker
All Implemented Interfaces:
Cleaner

public class CleanerJava24Linker extends Object implements Cleaner
  • Field Details

    • logger

      private static final InternalLogger logger
    • INVOKE_MALLOC

      private static final MethodHandle INVOKE_MALLOC
    • INVOKE_CREATE_BYTEBUFFER

      private static final MethodHandle INVOKE_CREATE_BYTEBUFFER
    • INVOKE_FREE

      private static final MethodHandle INVOKE_FREE
  • Constructor Details

    • CleanerJava24Linker

      public CleanerJava24Linker()
  • Method Details

    • isSupported

      static boolean isSupported()
    • allocate

      public CleanableDirectBuffer allocate(int capacity)
      Description copied from interface: Cleaner
      Create a direct ByteBuffer and return it alongside its cleaning mechanism, in a CleanableDirectBuffer.
      Specified by:
      allocate in interface Cleaner
      Parameters:
      capacity - The desired capacity of the direct buffer.
      Returns:
      The new CleanableDirectBuffer instance.
    • freeDirectBuffer

      public void freeDirectBuffer(ByteBuffer buffer)
      Description copied from interface: Cleaner
      Free a direct ByteBuffer if possible
      Specified by:
      freeDirectBuffer in interface Cleaner
    • hasExpensiveClean

      public boolean hasExpensiveClean()
      Description copied from interface: Cleaner
      Check if the clean operation is "relatively expensive". Expensive clean operations are fine for pooling allocators, but should be avoided for unpooled buffers.
      Specified by:
      hasExpensiveClean in interface Cleaner
      Returns:
      true if this Cleaner has an expensive clean (i.e. CleanableDirectBuffer.clean()) operation.
    • malloc

      static long malloc(int capacity)
    • free

      static void free(long memoryAddress)