Class PendingOpMap

java.lang.Object
io.netty.channel.uring.PendingOpMap

final class PendingOpMap extends Object
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private static final long
     
    private static final long
     
    private static final float
     
    private int
     
    private int
     
    private final AtomicLong
     
    private byte[]
     
    private int[]
     
    private int
     
    private long[]
     
    private static final long
     
    private int
     
    private long[]
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    PendingOpMap(int initialCapacity)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    private static int
    calcMaxSize(int capacity)
     
    private static int
    expandCapacity(int capacity)
     
    (package private) int
    findSlot(long token)
     
    private static int
    hashIndex(long key, int mask)
     
    private void
    insertAt(int index, long token, int registrationId, byte op, long userData)
     
    private void
    insertDuringRehash(long token, int registrationId, byte op, long userData)
     
    (package private) long
     
    (package private) byte
    op(int slot)
     
    private int
    probeNext(int index)
     
    (package private) void
    registerNormal(long token, int registrationId, byte op, long userData)
     
    (package private) int
    registrationId(int slot)
     
    private void
    rehash(int newCapacity)
     
    (package private) void
    release(int slot)
     
    (package private) static long
    token(long sequence)
    Slow-path and internal tokens are negative so they can be distinguished from packed fast-path userdata by checking bit 63.
    (package private) static long
    tokenSequence(long token)
     
    (package private) long
    userData(int slot)
     

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • LOAD_FACTOR

      private static final float LOAD_FACTOR
      See Also:
    • HASH_MULTIPLIER

      private static final long HASH_MULTIPLIER
      See Also:
    • EMPTY

      private static final long EMPTY
      See Also:
    • TOMBSTONE

      private static final long TOMBSTONE
      See Also:
    • tokens

      private long[] tokens
    • registrationIds

      private int[] registrationIds
    • ops

      private byte[] ops
    • userDatas

      private long[] userDatas
    • mask

      private int mask
    • maxSize

      private int maxSize
    • size

      private int size
    • tombstones

      private int tombstones
    • nextSequence

      private final AtomicLong nextSequence
  • Constructor Details

    • PendingOpMap

      PendingOpMap(int initialCapacity)
  • Method Details

    • nextToken

      long nextToken()
    • registerNormal

      void registerNormal(long token, int registrationId, byte op, long userData)
    • findSlot

      int findSlot(long token)
    • registrationId

      int registrationId(int slot)
    • op

      byte op(int slot)
    • userData

      long userData(int slot)
    • release

      void release(int slot)
    • insertAt

      private void insertAt(int index, long token, int registrationId, byte op, long userData)
    • rehash

      private void rehash(int newCapacity)
    • insertDuringRehash

      private void insertDuringRehash(long token, int registrationId, byte op, long userData)
    • token

      static long token(long sequence)
      Slow-path and internal tokens are negative so they can be distinguished from packed fast-path userdata by checking bit 63.
    • tokenSequence

      static long tokenSequence(long token)
    • hashIndex

      private static int hashIndex(long key, int mask)
    • probeNext

      private int probeNext(int index)
    • calcMaxSize

      private static int calcMaxSize(int capacity)
    • expandCapacity

      private static int expandCapacity(int capacity)