Package io.netty.incubator.channel.uring
Class IOUringSubmissionQueue
- java.lang.Object
-
- io.netty.incubator.channel.uring.IOUringSubmissionQueue
-
final class IOUringSubmissionQueue extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private intheadprivate static intINT_SIZEprivate intiosqeAsyncThresholdprivate longkArrayAddressprivate longkDroppedAddressprivate static intKERNEL_TIMESPEC_SIZEprivate static intKERNEL_TIMESPEC_TV_NSEC_FIELDprivate static intKERNEL_TIMESPEC_TV_SEC_FIELDprivate longkFlagsAddressprivate longkHeadAddressprivate longkTailAddressprivate static io.netty.util.internal.logging.InternalLoggerloggerprivate intnumHandledFds(package private) longringAddress(package private) intringEntries(package private) intringFdprivate intringMask(package private) intringSizeprivate static intSQE_ADDRESS_FIELDprivate static intSQE_FD_FIELDprivate static intSQE_FLAGS_FIELDprivate static intSQE_IOPRIO_FIELDprivate static intSQE_LEN_FIELDprivate static intSQE_OFFSET_FIELDprivate static intSQE_OP_CODE_FIELDprivate static intSQE_PAD_FIELDprivate static intSQE_RW_FLAGS_FIELDprivate static longSQE_SIZEprivate static intSQE_USER_DATA_FIELD(package private) longsubmissionQueueArrayAddressprivate inttailprivate longtimeoutMemoryAddress
-
Constructor Summary
Constructors Constructor Description IOUringSubmissionQueue(long kHeadAddress, long kTailAddress, long kRingMaskAddress, long kRingEntriesAddress, long kFlagsAddress, long kDroppedAddress, long kArrayAddress, long submissionQueueArrayAddress, int ringSize, long ringAddress, int ringFd, int iosqeAsyncThreshold)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) booleanaddAccept(int fd, long address, long addressLength, short extraData)(package private) booleanaddClose(int fd, short extraData)(package private) booleanaddConnect(int fd, long socketAddress, long socketAddressLength, short extraData)(package private) booleanaddEventFdRead(int fd, long bufferAddress, int pos, int limit, short extraData)private booleanaddPoll(int fd, int pollMask)(package private) booleanaddPollIn(int fd)(package private) booleanaddPollOut(int fd)(package private) booleanaddPollRdHup(int fd)(package private) booleanaddPollRemove(int fd, int pollMask)(package private) booleanaddRead(int fd, long bufferAddress, int pos, int limit, short extraData)(package private) booleanaddRecv(int fd, long bufferAddress, int pos, int limit, short extraData)(package private) booleanaddRecvmsg(int fd, long msgHdr, short extraData)(package private) booleanaddSend(int fd, long bufferAddress, int pos, int limit, short extraData)(package private) booleanaddSendmsg(int fd, long msgHdr, int flags, short extraData)(package private) booleanaddSendmsg(int fd, long msgHdr, short extraData)(package private) booleanaddTimeout(long nanoSeconds, short extraData)(package private) booleanaddWrite(int fd, long bufferAddress, int pos, int limit, short extraData)(package private) booleanaddWritev(int fd, long iovecArrayAddress, int length, short extraData)longcount()(package private) voiddecrementHandledFds()(package private) booleanenqueueSqe(byte op, int flags, int rwFlags, int fd, long bufferAddress, int length, long offset, short data)private intflags()(package private) voidincrementHandledFds()voidrelease()(package private) booleanremoveTimeout(short extraData)private voidsetData(long sqe, byte op, int flags, int rwFlags, int fd, long bufferAddress, int length, long offset, short data)private voidsetTimeout(long timeoutNanoSeconds)(package private) intsubmit()private intsubmit(int toSubmit, int minComplete, int flags)(package private) intsubmitAndWait()
-
-
-
Field Detail
-
logger
private static final io.netty.util.internal.logging.InternalLogger logger
-
SQE_SIZE
private static final long SQE_SIZE
- See Also:
- Constant Field Values
-
INT_SIZE
private static final int INT_SIZE
- See Also:
- Constant Field Values
-
KERNEL_TIMESPEC_SIZE
private static final int KERNEL_TIMESPEC_SIZE
- See Also:
- Constant Field Values
-
SQE_OP_CODE_FIELD
private static final int SQE_OP_CODE_FIELD
- See Also:
- Constant Field Values
-
SQE_FLAGS_FIELD
private static final int SQE_FLAGS_FIELD
- See Also:
- Constant Field Values
-
SQE_IOPRIO_FIELD
private static final int SQE_IOPRIO_FIELD
- See Also:
- Constant Field Values
-
SQE_FD_FIELD
private static final int SQE_FD_FIELD
- See Also:
- Constant Field Values
-
SQE_OFFSET_FIELD
private static final int SQE_OFFSET_FIELD
- See Also:
- Constant Field Values
-
SQE_ADDRESS_FIELD
private static final int SQE_ADDRESS_FIELD
- See Also:
- Constant Field Values
-
SQE_LEN_FIELD
private static final int SQE_LEN_FIELD
- See Also:
- Constant Field Values
-
SQE_RW_FLAGS_FIELD
private static final int SQE_RW_FLAGS_FIELD
- See Also:
- Constant Field Values
-
SQE_USER_DATA_FIELD
private static final int SQE_USER_DATA_FIELD
- See Also:
- Constant Field Values
-
SQE_PAD_FIELD
private static final int SQE_PAD_FIELD
- See Also:
- Constant Field Values
-
KERNEL_TIMESPEC_TV_SEC_FIELD
private static final int KERNEL_TIMESPEC_TV_SEC_FIELD
- See Also:
- Constant Field Values
-
KERNEL_TIMESPEC_TV_NSEC_FIELD
private static final int KERNEL_TIMESPEC_TV_NSEC_FIELD
- See Also:
- Constant Field Values
-
kHeadAddress
private final long kHeadAddress
-
kTailAddress
private final long kTailAddress
-
kFlagsAddress
private final long kFlagsAddress
-
kDroppedAddress
private final long kDroppedAddress
-
kArrayAddress
private final long kArrayAddress
-
submissionQueueArrayAddress
final long submissionQueueArrayAddress
-
ringEntries
final int ringEntries
-
ringMask
private final int ringMask
-
ringSize
final int ringSize
-
ringAddress
final long ringAddress
-
ringFd
final int ringFd
-
timeoutMemoryAddress
private final long timeoutMemoryAddress
-
iosqeAsyncThreshold
private final int iosqeAsyncThreshold
-
numHandledFds
private int numHandledFds
-
head
private int head
-
tail
private int tail
-
-
Constructor Detail
-
IOUringSubmissionQueue
IOUringSubmissionQueue(long kHeadAddress, long kTailAddress, long kRingMaskAddress, long kRingEntriesAddress, long kFlagsAddress, long kDroppedAddress, long kArrayAddress, long submissionQueueArrayAddress, int ringSize, long ringAddress, int ringFd, int iosqeAsyncThreshold)
-
-
Method Detail
-
incrementHandledFds
void incrementHandledFds()
-
decrementHandledFds
void decrementHandledFds()
-
flags
private int flags()
-
enqueueSqe
boolean enqueueSqe(byte op, int flags, int rwFlags, int fd, long bufferAddress, int length, long offset, short data)
-
setData
private void setData(long sqe, byte op, int flags, int rwFlags, int fd, long bufferAddress, int length, long offset, short data)
-
addTimeout
boolean addTimeout(long nanoSeconds, short extraData)
-
removeTimeout
boolean removeTimeout(short extraData)
-
addPollIn
boolean addPollIn(int fd)
-
addPollRdHup
boolean addPollRdHup(int fd)
-
addPollOut
boolean addPollOut(int fd)
-
addPoll
private boolean addPoll(int fd, int pollMask)
-
addRecvmsg
boolean addRecvmsg(int fd, long msgHdr, short extraData)
-
addSendmsg
boolean addSendmsg(int fd, long msgHdr, short extraData)
-
addSendmsg
boolean addSendmsg(int fd, long msgHdr, int flags, short extraData)
-
addRead
boolean addRead(int fd, long bufferAddress, int pos, int limit, short extraData)
-
addEventFdRead
boolean addEventFdRead(int fd, long bufferAddress, int pos, int limit, short extraData)
-
addWrite
boolean addWrite(int fd, long bufferAddress, int pos, int limit, short extraData)
-
addRecv
boolean addRecv(int fd, long bufferAddress, int pos, int limit, short extraData)
-
addSend
boolean addSend(int fd, long bufferAddress, int pos, int limit, short extraData)
-
addAccept
boolean addAccept(int fd, long address, long addressLength, short extraData)
-
addPollRemove
boolean addPollRemove(int fd, int pollMask)
-
addConnect
boolean addConnect(int fd, long socketAddress, long socketAddressLength, short extraData)
-
addWritev
boolean addWritev(int fd, long iovecArrayAddress, int length, short extraData)
-
addClose
boolean addClose(int fd, short extraData)
-
submit
int submit()
-
submitAndWait
int submitAndWait()
-
submit
private int submit(int toSubmit, int minComplete, int flags)
-
setTimeout
private void setTimeout(long timeoutNanoSeconds)
-
count
public long count()
-
release
public void release()
-
-