Class SubmissionQueue

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

final class SubmissionQueue extends java.lang.Object
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private boolean
     
    private int
     
    (package private) int
     
    private int
     
    private static final VarHandle
     
    private final java.nio.ByteBuffer
     
    private final java.nio.ByteBuffer
     
    private final java.nio.ByteBuffer
     
    private static final InternalLogger
     
    (package private) final long
     
    (package private) final int
     
    (package private) final int
     
    private final int
     
    (package private) final int
     
    private static final int
     
    private static final int
     
    private static final int
     
    private static final int
     
    private static final int
     
    private static final int
     
    (package private) static final int
     
    private static final int
     
    private static final int
     
    private static final int
     
    private static final int
     
    private static final int
     
    private static final int
     
    private static final int
     
    private final java.nio.ByteBuffer
     
    private int
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    SubmissionQueue(java.nio.ByteBuffer khead, java.nio.ByteBuffer ktail, int ringMask, int ringEntries, java.nio.ByteBuffer kflags, java.nio.ByteBuffer submissionQueueArray, int ringSize, long ringAddress, int ringFd)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    (package private) long
    addCancel(long sqeToCancel, long udata)
     
    (package private) long
    addEventFdRead(int fd, long bufferAddress, int pos, int limit, long udata)
     
    (package private) long
    addLinkTimeout(long timeoutMemoryAddress, long extraData)
     
    (package private) long
    addNop(byte flags, int nopFlags, long udata)
     
    (package private) long
    addNop(byte flags, long udata)
     
    (package private) long
    addTimeout(long timeoutMemoryAddress, long udata)
     
    private void
     
    (package private) void
     
    int
     
    (package private) long
    enqueueSqe(byte opcode, byte flags, short ioPrio, int fd, long union1, long union2, int len, int union3, long udata, short union4, short personality, int union5, long union6)
     
    (package private) int
     
    private int
    ioUringEnter(int toSubmit, int minComplete, int flags)
     
    private int
    ioUringEnter0(int toSubmit, int minComplete, int f)
     
    int
     
    private static int
    sqeIndex(int tail, int ringMask)
     
    (package private) long
     
    (package private) int
    Submit entries.
    private int
    submit(int toSubmit, int minComplete, int flags)
     
    (package private) int
    Submit entries and fetch completions.
    private int
    submitAndGet0(int minComplete)
     
    (package private) int
    Submit entries and fetch completions.
    java.lang.String
     
    (package private) void
     

    Methods inherited from class java.lang.Object

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

    • logger

      private static final InternalLogger logger
    • SQE_SIZE

      static final int SQE_SIZE
      See Also:
    • SQE_OP_CODE_FIELD

      private static final int SQE_OP_CODE_FIELD
      See Also:
    • SQE_FLAGS_FIELD

      private static final int SQE_FLAGS_FIELD
      See Also:
    • SQE_IOPRIO_FIELD

      private static final int SQE_IOPRIO_FIELD
      See Also:
    • SQE_FD_FIELD

      private static final int SQE_FD_FIELD
      See Also:
    • SQE_UNION1_FIELD

      private static final int SQE_UNION1_FIELD
      See Also:
    • SQE_UNION2_FIELD

      private static final int SQE_UNION2_FIELD
      See Also:
    • SQE_LEN_FIELD

      private static final int SQE_LEN_FIELD
      See Also:
    • SQE_UNION3_FIELD

      private static final int SQE_UNION3_FIELD
      See Also:
    • SQE_USER_DATA_FIELD

      private static final int SQE_USER_DATA_FIELD
      See Also:
    • SQE_UNION4_FIELD

      private static final int SQE_UNION4_FIELD
      See Also:
    • SQE_PERSONALITY_FIELD

      private static final int SQE_PERSONALITY_FIELD
      See Also:
    • SQE_UNION5_FIELD

      private static final int SQE_UNION5_FIELD
      See Also:
    • SQE_UNION6_FIELD

      private static final int SQE_UNION6_FIELD
      See Also:
    • INT_HANDLE

      private static final VarHandle INT_HANDLE
    • kHead

      private final java.nio.ByteBuffer kHead
    • kTail

      private final java.nio.ByteBuffer kTail
    • kflags

      private final java.nio.ByteBuffer kflags
    • submissionQueueArray

      private final java.nio.ByteBuffer submissionQueueArray
    • ringEntries

      final int ringEntries
    • ringMask

      private final int ringMask
    • ringSize

      final int ringSize
    • ringAddress

      final long ringAddress
    • ringFd

      final int ringFd
    • enterRingFd

      int enterRingFd
    • enterFlags

      private int enterFlags
    • tail

      private int tail
    • closed

      private boolean closed
  • Constructor Details

    • SubmissionQueue

      SubmissionQueue(java.nio.ByteBuffer khead, java.nio.ByteBuffer ktail, int ringMask, int ringEntries, java.nio.ByteBuffer kflags, java.nio.ByteBuffer submissionQueueArray, int ringSize, long ringAddress, int ringFd)
  • Method Details

    • flags

      int flags()
    • submissionQueueArrayAddress

      long submissionQueueArrayAddress()
    • close

      void close()
    • checkClosed

      private void checkClosed()
    • tryRegisterRingFd

      void tryRegisterRingFd()
    • enqueueSqe

      long enqueueSqe(byte opcode, byte flags, short ioPrio, int fd, long union1, long union2, int len, int union3, long udata, short union4, short personality, int union5, long union6)
    • toString

      public java.lang.String toString()
      Overrides:
      toString in class java.lang.Object
    • sqeIndex

      private static int sqeIndex(int tail, int ringMask)
    • addNop

      long addNop(byte flags, long udata)
    • addNop

      long addNop(byte flags, int nopFlags, long udata)
    • addTimeout

      long addTimeout(long timeoutMemoryAddress, long udata)
    • addLinkTimeout

      long addLinkTimeout(long timeoutMemoryAddress, long extraData)
    • addEventFdRead

      long addEventFdRead(int fd, long bufferAddress, int pos, int limit, long udata)
    • addCancel

      long addCancel(long sqeToCancel, long udata)
    • submit

      int submit()
      Submit entries.
      Returns:
      the number of submitted entries.
    • submitAndGet

      int submitAndGet()
      Submit entries and fetch completions. This method will block until there is at least one completion ready to be processed.
      Returns:
      the number of submitted entries.
    • submitAndGetNow

      int submitAndGetNow()
      Submit entries and fetch completions.
      Returns:
      the number of submitted entries.
    • submitAndGet0

      private int submitAndGet0(int minComplete)
    • submit

      private int submit(int toSubmit, int minComplete, int flags)
    • ioUringEnter

      private int ioUringEnter(int toSubmit, int minComplete, int flags)
    • ioUringEnter0

      private int ioUringEnter0(int toSubmit, int minComplete, int f)
    • count

      public int count()
    • remaining

      public int remaining()