将jni的入参JNIEnv赋值为全局变量
我将jni调用函数中的入参JNIEnv* 赋值为全局变量,然后在另一个函数中调用,程序core掉,core文件中提示
0x0000003bc4c30265 in raise () from /lib64/libc.so.6
#1 0x0000003bc4c31d10 in abort () from /lib64/libc.so.6
#2 0x00002add620543d7 in os::abort () from /opt/jdk1.6.0_19/jre/lib/amd64/server/libjvm.so
#3 0x00002add6218d50d in VMError::report_and_die () from /opt/jdk1.6.0_19/jre/lib/amd64/server/libjvm.so
#4 0x00002add6205a4c1 in JVM_handle_linux_signal () from /opt/jdk1.6.0_19/jre/lib/amd64/server/libjvm.so
#5 0x00002add62056cfe in signalHandler () from /opt/jdk1.6.0_19/jre/lib/amd64/server/libjvm.so
#6 <signal handler called>
#7 0x00002add61e629f3 in jni_FindClass () from /opt/jdk1.6.0_19/jre/lib/amd64/server/libjvm.so
#8 0x00002aab3c3e5ef1 in JNIEnv_::FindClass (this=0x2aab3414f050, name=0x2aab3c3e8fb0 "report/dataaccess/reportservice/queryReportObject")
at /opt/jdk1.6.0_19/include/jni.h:776
#9 0x00002aab3c3e5576 in Java_report_dataaccess_reportservice_JQueryReportServer_GetQueryReportServerResult (p_env=0x43c6a9b8, p_arg=0x41767b38
请各位大侠赐教!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
Java有明确的提示,JNIEnv不要cache起来,不同线程的JNIEnv是不一样的:
http://www.cnblogs.com/lovingprince/archive/2008/08/19/2166366.html