ByteBuf将在Netty4中更改其容量时被清除
调整此缓冲区的容量。如果{@code newCapacity}为 小于当前容量时,此缓冲区的内容为 截断的。如果{@code newCapacity}大于当前 容量时,缓冲区会附加长度为的未指定数据 {@code(newCapacity-currentCapacity)} 根据上述对ByteBuf.capacity(int newCapacity)的评论, 我们认为,在本方法之前的ByteBuf的内容物在扩展后会保留。但是这个测试用例失败了ByteBuf将在Netty4中更改其容量时被清除,netty,bytebuffer,Netty,Bytebuffer,调整此缓冲区的容量。如果{@code newCapacity}为 小于当前容量时,此缓冲区的内容为 截断的。如果{@code newCapacity}大于当前 容量时,缓冲区会附加长度为的未指定数据 {@code(newCapacity-currentCapacity)} 根据上述对ByteBuf.capacity(int newCapacity)的评论, 我们认为,在本方法之前的ByteBuf的内容物在扩展后会保留。但是这个测试用例失败了 ByteBuf bb = PooledByte
ByteBuf bb =
PooledByteBufAllocator.DEFAULT.directBuffer().order(
ByteOrder.nativeOrder());
bb.setInt(4, 333);
TestCase.assertEquals(333, bb.getInt(4)); // passed
bb.capacity(4096);
TestCase.assertEquals(333, bb.getInt(4)); // failed
我们得到一个断言失败
junit.framework.AssertionFailedError: expected:<333> but was:<0>
junit.framework.AssertionFailedError:应为:但为:
任何人都可以解释它,告诉我如何在不改变内容的情况下放大ByteBuf
谢谢,
Min我认为它与这个bug报告有关。。。我们目前正在调查: