我一直在尝试从字节对象中检索ByteBuffer (直接)对象引用。代码如下:
TestMessageWire testMessageWire = new TestMessageWire();
testMessageWire.data('H');
testMessageWire.setIntData(100);
//Below does not give ByteBuffer with correct position & offset
Bytes<ByteBuffer> bytes = Bytes.elasticByteBuffer(10);
Wire wire = new RawWire(bytes);
testMessageWire.writeMarshallable(wire);
ByteBuffer byteBuffer = ByteBuffer.wrap(bytes.toByteArray());
//Another approach, but still does not populate "byteBuffer" object correctly.
ByteBuffer byteBuffer = ByteBuffer.allocateDirect(6);
Bytes<?> bytes = Bytes.wrapForWrite(byteBuffer);
Wire wire = new RawWire(bytes);
testMessageWire.writeMarshallable(wire);我希望在创建ByteBuffer对象时避免多次分配。因此,希望重用由Bytes包装的相同Bitebuffer。我如何才能做到这一点?
https://stackoverflow.com/questions/51306208
复制相似问题