Package io.netty.incubator.channel.uring
Class IOUringDatagramChannel.IOUringDatagramChannelUnsafe
- java.lang.Object
-
- io.netty.incubator.channel.uring.AbstractIOUringChannel.AbstractUringUnsafe
-
- io.netty.incubator.channel.uring.IOUringDatagramChannel.IOUringDatagramChannelUnsafe
-
- All Implemented Interfaces:
io.netty.channel.Channel.Unsafe
- Enclosing class:
- IOUringDatagramChannel
final class IOUringDatagramChannel.IOUringDatagramChannelUnsafe extends AbstractIOUringChannel.AbstractUringUnsafe
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private classIOUringDatagramChannel.IOUringDatagramChannelUnsafe.WriteProcessor
-
Field Summary
Fields Modifier and Type Field Description private io.netty.buffer.ByteBufreadBufferprivate MsgHdrMemoryArrayrecvmsgHdrsprivate MsgHdrMemoryArraysendmsgHdrsprivate int[]sendmsgResArrayprivate IOUringDatagramChannel.IOUringDatagramChannelUnsafe.WriteProcessorwriteProcessor
-
Constructor Summary
Constructors Constructor Description IOUringDatagramChannelUnsafe()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) voidconnectComplete(int res)Connect was completed.private voidreadComplete(io.netty.channel.ChannelPipeline pipeline, IOUringRecvByteAllocatorHandle allocHandle, io.netty.buffer.ByteBuf byteBuf, int res)protected voidreadComplete0(int res, int data, int outstanding)Called once a read was completed.private voidrecvmsgComplete(io.netty.channel.ChannelPipeline pipeline, IOUringRecvByteAllocatorHandle allocHandle, io.netty.buffer.ByteBuf byteBuf, int res, int idx, int outstanding)(package private) voidreleaseBuffers()private booleanremoveFromOutboundBuffer(io.netty.channel.ChannelOutboundBuffer outboundBuffer, int res, java.lang.String errormsg)protected intscheduleRead0()Schedule a read and returns the number ofAbstractIOUringChannel.AbstractUringUnsafe.readComplete(int, int)calls that are expected because of the scheduled read.private intscheduleRecvmsg(io.netty.buffer.ByteBuf byteBuf, int numDatagram, int datagramSize)private booleanscheduleRecvmsg0(IOUringSubmissionQueue submissionQueue, long bufferAddress, int bufferLength)private booleanscheduleSendmsg(java.net.InetSocketAddress remoteAddress, long bufferAddress, int bufferLength, int segmentSize)private booleanscheduleWrite(java.lang.Object msg, boolean forceSendmsg)protected intscheduleWriteMultiple(io.netty.channel.ChannelOutboundBuffer in)Schedule the write of multiple messages in theChannelOutboundBufferand returns the number ofAbstractIOUringChannel.AbstractUringUnsafe.writeComplete(int, int)calls that are expected because of the scheduled write.protected intscheduleWriteSingle(java.lang.Object msg)Schedule the write of a single message and returns the number ofAbstractIOUringChannel.AbstractUringUnsafe.writeComplete(int, int)calls that are expected because of the scheduled write(package private) booleanwriteComplete0(int res, int data, int outstanding)Called once a write was completed.-
Methods inherited from class io.netty.incubator.channel.uring.AbstractIOUringChannel.AbstractUringUnsafe
close, connect, flush0, newIOUringHandle, pollIn, pollOut, pollRdHup, processDelayedClose, readComplete, recvBufAllocHandle, schedulePollIn, scheduleRead, shutdownInput, writeComplete
-
-
-
-
Field Detail
-
recvmsgHdrs
private final MsgHdrMemoryArray recvmsgHdrs
-
sendmsgHdrs
private final MsgHdrMemoryArray sendmsgHdrs
-
sendmsgResArray
private final int[] sendmsgResArray
-
writeProcessor
private final IOUringDatagramChannel.IOUringDatagramChannelUnsafe.WriteProcessor writeProcessor
-
readBuffer
private io.netty.buffer.ByteBuf readBuffer
-
-
Method Detail
-
releaseBuffers
void releaseBuffers()
-
readComplete0
protected void readComplete0(int res, int data, int outstanding)Description copied from class:AbstractIOUringChannel.AbstractUringUnsafeCalled once a read was completed.- Specified by:
readComplete0in classAbstractIOUringChannel.AbstractUringUnsafe
-
readComplete
private void readComplete(io.netty.channel.ChannelPipeline pipeline, IOUringRecvByteAllocatorHandle allocHandle, io.netty.buffer.ByteBuf byteBuf, int res) throws java.io.IOException- Throws:
java.io.IOException
-
recvmsgComplete
private void recvmsgComplete(io.netty.channel.ChannelPipeline pipeline, IOUringRecvByteAllocatorHandle allocHandle, io.netty.buffer.ByteBuf byteBuf, int res, int idx, int outstanding) throws java.io.IOException- Throws:
java.io.IOException
-
scheduleRead0
protected int scheduleRead0()
Description copied from class:AbstractIOUringChannel.AbstractUringUnsafeSchedule a read and returns the number ofAbstractIOUringChannel.AbstractUringUnsafe.readComplete(int, int)calls that are expected because of the scheduled read.- Specified by:
scheduleRead0in classAbstractIOUringChannel.AbstractUringUnsafe
-
scheduleRecvmsg
private int scheduleRecvmsg(io.netty.buffer.ByteBuf byteBuf, int numDatagram, int datagramSize)
-
scheduleRecvmsg0
private boolean scheduleRecvmsg0(IOUringSubmissionQueue submissionQueue, long bufferAddress, int bufferLength)
-
writeComplete0
boolean writeComplete0(int res, int data, int outstanding)Description copied from class:AbstractIOUringChannel.AbstractUringUnsafeCalled once a write was completed.- Specified by:
writeComplete0in classAbstractIOUringChannel.AbstractUringUnsafe
-
removeFromOutboundBuffer
private boolean removeFromOutboundBuffer(io.netty.channel.ChannelOutboundBuffer outboundBuffer, int res, java.lang.String errormsg)
-
connectComplete
void connectComplete(int res)
Description copied from class:AbstractIOUringChannel.AbstractUringUnsafeConnect was completed.- Overrides:
connectCompletein classAbstractIOUringChannel.AbstractUringUnsafe
-
scheduleWriteMultiple
protected int scheduleWriteMultiple(io.netty.channel.ChannelOutboundBuffer in)
Description copied from class:AbstractIOUringChannel.AbstractUringUnsafeSchedule the write of multiple messages in theChannelOutboundBufferand returns the number ofAbstractIOUringChannel.AbstractUringUnsafe.writeComplete(int, int)calls that are expected because of the scheduled write.- Specified by:
scheduleWriteMultiplein classAbstractIOUringChannel.AbstractUringUnsafe
-
scheduleWriteSingle
protected int scheduleWriteSingle(java.lang.Object msg)
Description copied from class:AbstractIOUringChannel.AbstractUringUnsafeSchedule the write of a single message and returns the number ofAbstractIOUringChannel.AbstractUringUnsafe.writeComplete(int, int)calls that are expected because of the scheduled write- Specified by:
scheduleWriteSinglein classAbstractIOUringChannel.AbstractUringUnsafe
-
scheduleWrite
private boolean scheduleWrite(java.lang.Object msg, boolean forceSendmsg)
-
scheduleSendmsg
private boolean scheduleSendmsg(java.net.InetSocketAddress remoteAddress, long bufferAddress, int bufferLength, int segmentSize)
-
-