【问题标题】:Netty channel closes when exception is thrown抛出异常时 Netty 通道关闭
【发布时间】:2018-06-14 16:03:22
【问题描述】:

我在客户端模式下设置了 Netty。我有一个带有一个处理程序的简单管道:

MyHandler extends Http2ConnectionHandler implements Http2FrameListener

如果我调用 channel.write() 然后故意在 write 方法中抛出异常,则通道会在到达 exceptionCaught 方法之前关闭。

是什么导致 Netty 通道在引发异常后关闭,但在调用 exceptionCaught 之前?

【问题讨论】:

    标签: netty


    【解决方案1】:

    通常,如果您在“write”方法中抛出异常,它不会传播到exceptionCaught,但会导致 write 方法返回的ChannelFuture 失败。

    Channel 何时关闭取决于许多不同的因素,例如使用的ChannelFutureListeners 或ChannelOutboundHandler 实现本身。没有更多的信息是不可能的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-12-10
      • 1970-01-01
      • 2014-07-14
      • 1970-01-01
      • 1970-01-01
      • 2012-02-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多