我该如何获取Java ByteBuffer的内部数组指针?
JNIEXPORT void JNICALL test(JNIEnv *env, jobject thiso) {
jclass cls = env->FindClass("java/nio/ByteBuffer");
jmethodID aloc = env->GetStaticMethodID(cls, "allocateDirect", "(I)Ljava/nio/ByteBuffer;");
jobject obj = env->CallStaticObjectMethod(cls, aloc, 1000);
}
备注:我这样做是为了共享Java和C++使用的内存。
m_buffer
已经指向分配的内存了吗?如果是这样,为什么还要使用new
? - Kerrek SB