JavaVM *javaVM = NULL; JNIEnv *jniEnv = NULL;
( createJavaVM )( &javaVM, ( void * )&jniEnv, &javaVMInitArgs )
其中 javaVM * 和 jniEnv * 是全局变量
最佳答案
Is it ok to save JavaVM * as a global variable and use it elsewhere?
是的。
Is it ok to save JNIEnv * as a global variable and use it elsewhere?
没有。它代表特定 JNI 方法调用的上下文。它依赖于当前线程、当前方法的参数、当前方法创建的本地引用等等,一旦 JNI 方法返回,它就变得无效。
关于java - 是否可以将 JavaVM * 和 JNIEnv * 保存为全局变量并在其他地方使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10082769/