使用Netty编写高效的方法

时间:2012-05-30 11:07:10

标签: java netty

当我将对象写入网络时,Netty是否为我提供了避免缓冲区复制的方法?在我的Channel.write(Object)中,根据我的理解,该对象通过编码器(返回ChannelBuffer副本)。这基本上意味着每条消息我最终都会创建一个缓冲区副本,最终会创建大量的短期缓冲区对象

Netty可以为我提供一个可重复使用的ChannelBuffer,我用字节填充它并将这些字节直接写入网络吗?

1 个答案:

答案 0 :(得分:0)

Netty已经回收了缓冲区,你不需要关心它。

此外,编码器/解码器只是你自己编写的编码器/解码器,Netty只能处理 ChannelBuffer 对象,如果你正在为你的频道写一个ChannelBuffer,它周围没有魔法,它的内容是直接写到输出。

您可以(而且应该)做的是创建所需大小的缓冲区,以避免在使用数据加载缓冲区时分配动态缓冲区。