例如,同一对象有两个不同的 JNI 方法
class JavaObj{
public native void methodA();
public native void methodB();
}
这些方法的 JNI header 可能是
JNIEXPORT void JNICALL Java_JavaObj_methodA(JNIEnv * pEnv, jobject javaobj);
JNIEXPORT void JNICALL Java_JavaObj_methodB(JNIEnv * pEnv, jobject javaobj);
那么可以安全地假设这两个单独的 JNI 调用中 pEnv 和 javaobj 的值相同吗?
最佳答案
当然不是。 JNIEnv * 可以在 JNI 调用之间随时更改,并且您可以拥有类的多个实例。
关于java - 不同JNI调用的相同参数是否具有相同的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3903994/