java memcopy DirectBuffer

时间:2011-05-30 22:02:10

标签: java memcpy bytebuffer

您好我正在使用Java中的直接缓冲区,我需要对它们进行快速记忆。在C中有memcpy命令,在Java Arrays上我有Arrays.copyOf。但是没有办法使用Arrays而不是直接缓冲区,因为我需要将它们转移到OpenGL。

3 个答案:

答案 0 :(得分:3)

如果您的意思是“直接”ByteBuffers,则会有一个put方法接受其他ByteBuffer个实例,以便您可以复制。

答案 1 :(得分:3)

您可以将put()与byte []或ByteBuffer一起使用,这将在Sun / Oracle JDK中使用本机调用memcpy。

对于直接和堆字节缓冲区put()使用Bits.copyFromArray()Unsafe.copyMemory()方法。

答案 2 :(得分:1)

检查System.arrayCopy这是在java中复制部分数组的最快方法