0

所以在 Netty 3.x 库中,ChannelHandlerContext 类有一个名为 setAttachment 的方法。不幸的是,它似乎不存在于新的 4.0 库中。我想知道是否有办法像在旧图书馆一样放置附件。

4

1 回答 1

4

在做了一些研究后,我发现了以下内容:

版本状态中接口org.jboss.netty.channel.ChannelHandlerContext的 javadocs3.2

存储有状态信息

setAttachment(Object)getAttachment()允许您存储和访问与处理程序及其上下文相关的有状态信息。请参考ChannelHandler了解管理有状态信息的各种推荐方法。

io.netty.channel.ChannelHandlerContext版本中的 javadocs4.0显然取代了 3.x 版的org.jboss.netty.channel.ChannelHandlerContext声明如下Storing stateful information

存储有状态信息

AttributeMap.attr(AttributeKey)允许您存储和访问与处理程序及其上下文相关的状态信息。请参考ChannelHandler了解管理有状态信息的各种推荐方法。

似乎Attachments3.x 版本现在在 4.0 版本中使用Attribute<T>generics而不是!)处理Object

因此,您需要查看AttributeMap.attr(AttributeKey)和说明的示例

// 这个处理程序将接收从 1 开始递增的整数序列。

ChannelHandlerContext在两个版本的 javadocs 中都给出了。

我希望这将帮助您找到一种使用新 API 对您的需求进行编码的方法。

于 2013-08-20T21:09:28.987 回答