返回

opengl——关于java中直接缓冲区释放的分歧

发布时间:2022-04-22 21:51:07 184
# php

我正在使用opengl和java for Android。

它需要大量使用直接缓冲区。

上面的文档只说直接缓冲区不是垃圾收集的,而且是长期存在的。

但是我在电影里看到的libgdx它释放直接缓冲区的库jni通过呼叫将其调平free(buffer).

虽然其他文件中没有提到,但似乎libgdx还有另一种方法可以在服务器上分配直接缓冲区jni我找不到任何这样的重载函数JNI->newDirectByteBuffer.

请看以下两种方法:

/* 
Frees the memory allocated for 
the ByteBuffer, which MUST have 
been allocated via {@link #newUnsafeByteBuffer(ByteBuffer)}
or in native code. */
private static native void 
freeMemory (ByteBuffer buffer); 
/*
    free(buffer);
*/


private static native ByteBuffer newDisposableByteBuffer (int numBytes);/*
    return env->NewDirectByteBuffer((char*)malloc(numBytes), numBytes);
*/

有人能解释一下如何删除直接缓冲区吗?

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像