readReadyFd() — netty Function Reference
Architecture documentation for the readReadyFd() function in KQueueDomainSocketChannel.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 131adef7_86c6_6c7e_dddd_9b8b83913ccb["readReadyFd()"] 296e37d0_15ad_0124_d998_7b16b98aec54["KQueueDomainUnsafe"] 131adef7_86c6_6c7e_dddd_9b8b83913ccb -->|defined in| 296e37d0_15ad_0124_d998_7b16b98aec54 8aca2ab6_9800_2119_f857_87862c4d6b16["readReady()"] 8aca2ab6_9800_2119_f857_87862c4d6b16 -->|calls| 131adef7_86c6_6c7e_dddd_9b8b83913ccb style 131adef7_86c6_6c7e_dddd_9b8b83913ccb fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
transport-classes-kqueue/src/main/java/io/netty/channel/kqueue/KQueueDomainSocketChannel.java lines 142–187
private void readReadyFd() {
if (socket.isInputShutdown()) {
super.clearReadFilter0();
return;
}
final ChannelConfig config = config();
final KQueueRecvByteAllocatorHandle allocHandle = recvBufAllocHandle();
final ChannelPipeline pipeline = pipeline();
allocHandle.reset(config);
try {
readLoop: do {
// lastBytesRead represents the fd. We use lastBytesRead because it must be set so that the
// KQueueRecvByteAllocatorHandle knows if it should try to read again or not when autoRead is
// enabled.
int recvFd = socket.recvFd();
switch(recvFd) {
case 0:
allocHandle.lastBytesRead(0);
break readLoop;
case -1:
allocHandle.lastBytesRead(-1);
close(voidPromise());
return;
default:
allocHandle.lastBytesRead(1);
allocHandle.incMessagesRead(1);
readPending = false;
pipeline.fireChannelRead(new FileDescriptor(recvFd));
break;
}
} while (allocHandle.continueReading());
allocHandle.readComplete();
pipeline.fireChannelReadComplete();
} catch (Throwable t) {
allocHandle.readComplete();
pipeline.fireChannelReadComplete();
pipeline.fireExceptionCaught(t);
} finally {
if (shouldStopReading(config)) {
clearReadFilter0();
}
}
}
Domain
Subdomains
Defined In
Called By
Source
Frequently Asked Questions
What does readReadyFd() do?
readReadyFd() is a function in the netty codebase, defined in transport-classes-kqueue/src/main/java/io/netty/channel/kqueue/KQueueDomainSocketChannel.java.
Where is readReadyFd() defined?
readReadyFd() is defined in transport-classes-kqueue/src/main/java/io/netty/channel/kqueue/KQueueDomainSocketChannel.java at line 142.
What calls readReadyFd()?
readReadyFd() is called by 1 function(s): readReady.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free