有人可以解释netty
方法ChannelHandlerContext flush()
的确切作用吗?它会立即通过网络发送所有消息,从而有效绕过管道中的任何处理程序,从而停止任何已定义的处理吗?
答案 0 :(得分:3)
Netty in Action书中的定义更明确:
write
:
将消息写入Channel。这将在write(ChannelandlerContext, Object msg, ChannelPromise)
中的下一个ChannelOutboundHandler
上调用ChannelPipeline
。
注意:这不会将消息写入底层Socket,而只是
排队。要将其写入套接字,请调用flush()
或writeAndFlush()
。
flush
:
清除Channel的所有未决写入。这将在flush(ChannelHandlerContext
ChannelOutboundHandler
上调用ChannelPipeline
)
答案 1 :(得分:1)
从Netty 4.1文档中:
flush()
请求通过此ChannelOutboundInvoker刷新所有未决消息。
您可以在此处找到更多示例:Code Examples for ChannelHandlerContext.flush()