JNI多线程中findclass怎么用找自定义的类
我要用ndk编译c++的代码,其中包含了多线程,主线程和回调线程。
在主线程中使用env->GetJavaVM(&g_jvm);得到了全局的vm,
在回调线程中我首先得到了env:
JNIEnv* env = NULL;
g_jvm->AttachCurrentThread(&env, NULL);
然后利用
jclass cls = env->FindClass("vc/db/DataSearchService");
其中vc/db是包名,DataSearchService是自定义的类名,调用第二次后程序就挂了,可是如果把类改成
"java/lang/String"就没问题,怎么办呢?
在主线程中调用 env->FindClass("vc/db/DataSearchService");是没有问题的