我是netty的新手,并试图了解writeAndFlush的频道未来如何运作。考虑在netty客户端上运行的以下代码:
final ChannelFuture writeFuture = abacaChannel.writeAndFlush("Test");
writeFuture.addListener(new ChannelFutureListener() {
@Override
public void operationComplete(ChannelFuture future) throws Exception {
if (writeFuture.isSuccess()) {
LOGGER.debug("Write successful");
} else {
LOGGER.error("Error writing message to Abaca host");
}
}
});
这个writeFuture operationComplete回调是什么时候执行的?
netty将数据移交给OS发送缓冲区(或)
操作系统将数据写入网络套接字后。 (或)
服务器实际收到此数据后。
TIA
答案 0 :(得分:2)
1. After netty hands over the data to the OS send buffers (or)
data
从ChannelOutboundBuffer
(netty的发送缓冲区)中删除后,将通知监听器