1

因此,当在通道上的处理程序之间共享项目时,ChannelLocal(带有伴随的 put 和 get)是 3.3.1 中的解决方案。

当我处理完处理程序链后,ChannelLocal 是否会自动意识到我的 Channel 已关闭并清空它在 ChannelLocal 中的条目?或者,我是否需要在完成共享对象后显式地“清空”或清空 ChannelLocal?

IE,如果我使用 ChannelLocal 并且在完成后没有明确地将我放入其中的项目清空,我是否会发生内存泄漏?

挖掘源代码注释让我不确定垃圾收集如何与项目交互。

4

1 回答 1

2

如果使用参数 true 构造 ChannelLocal,一旦 Channel 关闭,它就会自动清理。否则你需要自己做。默认是用 false 构造它。

见[1]。

[1] http://netty.io/docs/stable/xref/org/jboss/netty/channel/ChannelLocal.html#127

于 2012-04-09T15:37:19.290 回答