jjzjj

ReleaseByteArrayElements

全部标签

java - 字节数组的 JNI 内存泄漏

我有一个java程序多次调用native函数。我的问题是这个函数有内存泄漏,我为摆脱它所做的一切都会导致内存转储。任何帮助将不胜感激。这是我的代码JNIEXPORTvoidJNICALLJava_class_method_getInput(JNIEnv*env,jobjectobj){if(inputIsAvailable){intsize=getBufferCurrentIndex();size-=getBufferReadIndex();size*=2;char*finalSendArray=newchar[size];getCommand(finalSendArray);jbyt

java - 如何在 jni 中将 jbyteArray 转换为原生 char*?

我正在尝试将jbyteArray转换为jni中的原生C字符串(char*)?不幸的是,我找不到任何关于如何做到这一点的文档。我在C代码中使用以下原型(prototype)调用Java函数。publicstaticbyte[]processFile(byte[]p_fileContent)在C代码中,我调用了这个返回字节数组的函数。这个字节数组的内容是一个java字符串。但我需要将其转换为C字符串。jbyteArrayarr=(jbyteArray)env->CallObjectMethod(clsH,midMain,jb);printf("%s\n",(char*)arr);