2010-10-11 101 views
1

例如,有同一个对象的两种不同的JNI方法不同的JNI调用的相同参数是否具有相同的值?


class JavaObj{ 
    public native void methodA(); 
    public native void methodB(); 
} 

的JNI头这些方法可能是


JNIEXPORT void JNICALL Java_JavaObj_methodA(JNIEnv * pEnv, jobject javaobj); 
JNIEXPORT void JNICALL Java_JavaObj_methodB(JNIEnv * pEnv, jobject javaobj); 

因此,它是安全的假设,pEnv和javaobj的值在这两个独立的JNI调用中是否是相同的?

回答

1

当然不是。 JNIEnv *可以改变JNI调用之间的任何时间,并且你可以有你的类的多个实例。

相关问题