JNIEXPORT jint JNICALL Java_xxxxx_xx
(JNIEnv *env, jobject thiz, jint cn,jobject obj)
实现在其它线程中用调用 JNIEnv *env \ jobject obj 两个参数 . 谢谢 先
(JNIEnv *env, jobject thiz, jint cn,jobject obj)
实现在其它线程中用调用 JNIEnv *env \ jobject obj 两个参数 . 谢谢 先
obj必须new一个Global的Ref出来,然后全局共享之,这样其他线程就能用了。程序退出前要释放这个。
看来你没怎么用过JNI,建议下载一本JNI的资料,是JAVA公司出的,专门讲解JNI的知识,我就是看那个知道的。
DetachCurrentThreadlz可以查阅下jni这两个函数的使用方法,一个是把jvm加载到当前线程,一个是把jvm从当前线程剥离
另外要注意一个jobject如果要跨线程的话,需要申请为全局引用,NewGlobalRef函数
所以当这个GlobalRef不再使用时,要用DeleteGlobalRef把这个GlobalRef清除掉,LocalRef也是一样的