如何将byte []转换为bytebuffer本机内存?

我需要将大量内存传递给jni端来解析它.
我之前使用GetByteArrayElements来获取本机指针.但是我发现这个方法总是复制内存,而不是直接使用内存.
所以我使用GetDirectBufferAddress直接获取内存以避免mem copy.
这要求必须使用allocateDirect方法来分配内存.
但是给我的内存是字节数组,而不是本机内存.
有没有办法将byte []转换为bytebuffer?
谢谢.

解决方法:

不幸的是,您将不得不使用put并将您的字节数组复制到allocateDirect分配的缓冲区.

上一篇:java – 当缓冲区未满时,为什么bytebuffer会给出缓冲区溢出异常


下一篇:Java – 将16位带符号的pcm音频数据数组转换为双数组