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 int
head
private static int
INT_SIZE
private int
iosqeAsyncThreshold
private long
kArrayAddress
private long
kDroppedAddress
private static int
KERNEL_TIMESPEC_SIZE
private static int
KERNEL_TIMESPEC_TV_NSEC_FIELD
private static int
KERNEL_TIMESPEC_TV_SEC_FIELD
private long
kFlagsAddress
private long
kHeadAddress
private long
kTailAddress
private static io.netty.util.internal.logging.InternalLogger
logger
private int
numHandledFds
(package private) long
ringAddress
(package private) int
ringEntries
(package private) int
ringFd
private int
ringMask
(package private) int
ringSize
private static int
SQE_ADDRESS_FIELD
private static int
SQE_FD_FIELD
private static int
SQE_FLAGS_FIELD
private static int
SQE_IOPRIO_FIELD
private static int
SQE_LEN_FIELD
private static int
SQE_OFFSET_FIELD
private static int
SQE_OP_CODE_FIELD
private static int
SQE_PAD_FIELD
private static int
SQE_RW_FLAGS_FIELD
private static long
SQE_SIZE
private static int
SQE_USER_DATA_FIELD
(package private) long
submissionQueueArrayAddress
private int
tail
private long
timeoutMemoryAddress
-
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) boolean
addAccept(int fd, long address, long addressLength, short extraData)
(package private) boolean
addClose(int fd, short extraData)
(package private) boolean
addConnect(int fd, long socketAddress, long socketAddressLength, short extraData)
(package private) boolean
addEventFdRead(int fd, long bufferAddress, int pos, int limit, short extraData)
private boolean
addPoll(int fd, int pollMask)
(package private) boolean
addPollIn(int fd)
(package private) boolean
addPollOut(int fd)
(package private) boolean
addPollRdHup(int fd)
(package private) boolean
addPollRemove(int fd, int pollMask)
(package private) boolean
addRead(int fd, long bufferAddress, int pos, int limit, short extraData)
(package private) boolean
addRecv(int fd, long bufferAddress, int pos, int limit, short extraData)
(package private) boolean
addRecvmsg(int fd, long msgHdr, short extraData)
(package private) boolean
addSend(int fd, long bufferAddress, int pos, int limit, short extraData)
(package private) boolean
addSendmsg(int fd, long msgHdr, int flags, short extraData)
(package private) boolean
addSendmsg(int fd, long msgHdr, short extraData)
(package private) boolean
addTimeout(long nanoSeconds, short extraData)
(package private) boolean
addWrite(int fd, long bufferAddress, int pos, int limit, short extraData)
(package private) boolean
addWritev(int fd, long iovecArrayAddress, int length, short extraData)
long
count()
(package private) void
decrementHandledFds()
(package private) boolean
enqueueSqe(byte op, int flags, int rwFlags, int fd, long bufferAddress, int length, long offset, short data)
private int
flags()
(package private) void
incrementHandledFds()
void
release()
(package private) boolean
removeTimeout(short extraData)
private void
setData(long sqe, byte op, int flags, int rwFlags, int fd, long bufferAddress, int length, long offset, short data)
private void
setTimeout(long timeoutNanoSeconds)
(package private) int
submit()
private int
submit(int toSubmit, int minComplete, int flags)
(package private) int
submitAndWait()
-
-
-
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()
-
-