Netty channel.write()或context.write()是否会引发异常?

Netty channel.write()或context.write()是否会引发异常?,netty,Netty,调用其中任何一个时,是否需要预期任何异常 io.netty.channel.Channel.write(...) io.netty.channel.Channel.flush(...) io.netty.channel.Channel.writeAndFlush(...) io.netty.channel.ChannelHandlerContext.write(...) io.netty.channel.ChannelHandlerContext.writeAndFlush(...) 似乎不是

调用其中任何一个时,是否需要预期任何异常

io.netty.channel.Channel.write(...)
io.netty.channel.Channel.flush(...)
io.netty.channel.Channel.writeAndFlush(...)
io.netty.channel.ChannelHandlerContext.write(...)
io.netty.channel.ChannelHandlerContext.writeAndFlush(...)
似乎不是。没有检查过的异常,没有记录过抛出,在任何示例代码中我都没有看到任何try/catch块。然而,我似乎无法发现我的假设得到明确的表述

例如,这不会引发任何异常:

ChannelFuture closeFuture = channel.close();
closeFuture.addListener(new ChannelFutureListener() {
    @Override
    public void operationComplete(ChannelFuture future) throws Exception
    {
        channel.writeAndFlush(msg); // No exception when writing to closed channel
    });
即使通道已关闭,所有下游处理程序也会像通道已打开一样处理写入的消息。别误会我;我对这种行为非常满意!我可以捕捉到
频道不活跃的
例外的突发事件,妥善处理它们,在我真正关心
写作的地方,我可以倾听成功的未来

我只是想有人告诉我,Netty真的让我写I/o的东西,而没有无休止的异常处理!我正在使用Netty 5.0.0.1


谢谢

它不会引发任何异常,但会将操作的任何异常(或成功)通知返回的ChannelFuture。

它不会引发任何异常,但会将操作的任何异常(或成功)通知返回的ChannelFuture