io.netty.channel.EventLoop that uses IO_URING.
| Modifier and Type | Field and Description |
|---|---|
| private static final long | |
| private final IOUringCompletionQueueCallback | |
| private final IntObjectMap | |
| private final FileDescriptor | |
| private final long | |
| private final byte[] | |
| private final byte[] | |
| private static final InternalLogger | |
| private final AtomicLong | |
| private static final long | |
| private boolean | |
| private long | |
| private short | prevTimeoutGeneration
This is a "generation" counter that is passed to addTimeout. |
| private final RingBuffer | |
| private final Runnable |
| Access | Constructor and Description |
|---|---|
| pack-priv | IOUringEventLoop(IOUringEventLoopGroup parent, Executor executor, int ringSize, int iosqeAsyncThreshold, RejectedExecutionHandler rejectedExecutionHandler, EventLoopTaskQueueFactory queueFactory)
|
| Modifier and Type | Method and Description |
|---|---|
| pack-priv void | |
| private void | |
| protected void | cleanup()
Overrides io. |
| private void | |
| pack-priv RingBuffer | |
| private void | |
| private void | |
| pack-priv void | |
| private void | |
| private void | |
| private void | |
| pack-priv byte[] | |
| pack-priv byte[] | |
| private static Queue | |
| protected Queue | newTaskQueue(int maxPendingTasks)
Overrides io. Queue which will holds the tasks to execute.
|
| private static Queue | |
| pack-priv void | |
| protected void | run()
Implements abstract io. taskQueue
|
| public void | |
| protected void |
| AWAKE | back to summary |
|---|---|
| private static final long AWAKE | |
| callback | back to summary |
|---|---|
| private final IOUringCompletionQueueCallback callback | |
| channels | back to summary |
|---|---|
| private final IntObjectMap<AbstractIOUringChannel> channels | |
| eventfd | back to summary |
|---|---|
| private final FileDescriptor eventfd | |
| eventfdReadBuf | back to summary |
|---|---|
| private final long eventfdReadBuf | |
| inet4AddressArray | back to summary |
|---|---|
| private final byte[] inet4AddressArray | |
| inet6AddressArray | back to summary |
|---|---|
| private final byte[] inet6AddressArray | |
| logger | back to summary |
|---|---|
| private static final InternalLogger logger Hides io. | |
| nextWakeupNanos | back to summary |
|---|---|
| private final AtomicLong nextWakeupNanos | |
| NONE | back to summary |
|---|---|
| private static final long NONE | |
| pendingWakeup | back to summary |
|---|---|
| private boolean pendingWakeup | |
| prevDeadlineNanos | back to summary |
|---|---|
| private long prevDeadlineNanos | |
| prevTimeoutGeneration | back to summary |
|---|---|
| private short prevTimeoutGeneration This is a "generation" counter that is passed to addTimeout. It ensures that the expiry of a previous timeout doesn't make us think the current timeout has expired, which could lead to wrongly not removing the current timeout when it's adjusted again. | |
| ringBuffer | back to summary |
|---|---|
| private final RingBuffer ringBuffer | |
| submitIOTask | back to summary |
|---|---|
| private final Runnable submitIOTask | |
| IOUringEventLoop | back to summary |
|---|---|
| pack-priv IOUringEventLoop(IOUringEventLoopGroup parent, Executor executor, int ringSize, int iosqeAsyncThreshold, RejectedExecutionHandler rejectedExecutionHandler, EventLoopTaskQueueFactory queueFactory) | |
| add | back to summary |
|---|---|
| pack-priv void add(AbstractIOUringChannel ch) | |
| addEventFdRead | back to summary |
|---|---|
| private void addEventFdRead(IOUringSubmissionQueue submissionQueue) | |
| cleanup | back to summary |
|---|---|
| protected void cleanup() Overrides io. Doc from io. Do nothing, sub-classes may override
| |
| closeAll | back to summary |
|---|---|
| private void closeAll() | |
| getRingBuffer | back to summary |
|---|---|
| pack-priv RingBuffer getRingBuffer() | |
| handle | back to summary |
|---|---|
| private void handle(int fd, int res, int flags, byte op, short data) | |
| handleConnect | back to summary |
|---|---|
| private void handleConnect(AbstractIOUringChannel channel, int res) | |
| handleLoopException | back to summary |
|---|---|
| pack-priv void handleLoopException(Throwable t) Visible only for testing! | |
| handlePollAdd | back to summary |
|---|---|
| private void handlePollAdd(AbstractIOUringChannel channel, int res, int pollMask) | |
| handleRead | back to summary |
|---|---|
| private void handleRead(AbstractIOUringChannel channel, int res, int data) | |
| handleWrite | back to summary |
|---|---|
| private void handleWrite(AbstractIOUringChannel channel, int res, int data) | |
| inet4AddressArray | back to summary |
|---|---|
| pack-priv byte[] inet4AddressArray()
| |
| inet6AddressArray | back to summary |
|---|---|
| pack-priv byte[] inet6AddressArray()
| |
| newTaskQueue | back to summary |
|---|---|
| private static Queue | |
| newTaskQueue | back to summary |
|---|---|
| protected Queue Overrides io. Doc from io. Create a new
| |
| newTaskQueue0 | back to summary |
|---|---|
| private static Queue | |
| remove | back to summary |
|---|---|
| pack-priv void remove(AbstractIOUringChannel ch) | |
| run | back to summary |
|---|---|
| protected void run() Implements abstract io. Doc from io. Run the tasks in the
| |
| submitIO | back to summary |
|---|---|
| public void submitIO() Submit the IO so the kernel can process it. This method can be called to "force" the submission (before it is submitted by netty itself). | |
| wakeup | back to summary |
|---|---|
| protected void wakeup(boolean inEventLoop) Overrides io.
| |