调用ioBuffer()方法时,netty不会尊重preferDirect属性

时间:2016-11-22 18:43:38

标签: netty

我正在调试Netty 4.1的一个问题,我从Netty那里得到关于Java耗尽直接内存的错误,我尝试解决问题的一件事就是为false传递preferDirect 1}} PooledByteBufAllocator的构造函数参数。但是,我发现这没有任何实质性影响 - Netty仍在抛出直接内存错误。在做了一些挖掘之后,我发现Netty在创建" IO缓冲区"时没有尊重preferDirect属性。通过AbstractByteBufAllocator.ioBuffer()方法。这让我很困惑。这是一个错误吗?如果没有,Netty作者可以解释为什么不呢?最后,我将PooledByteBufAllocator子类化并覆盖ioBuffer()方法,以便在preferDirectfalse时返回基于堆的缓冲区。

0 个答案:

没有答案