java jni入门问题
我开始研究JNI,据我所知,如果加载的dll出现问题,jvm可能会当场终止
也就是说,流程无法得到保护,例如捕获异常时
因此,如果我的理解是正确的,我的问题是,在使用jni时,是否有一种标准的方法/模式来解决这种情况
或者换一种说法,使用jni的流程是以避免这些问题的方式设计的吗?
或者这些问题预计不会发生
谢谢
你可以在下面搜索框中键入要查询的问题!
我开始研究JNI,据我所知,如果加载的dll出现问题,jvm可能会当场终止
也就是说,流程无法得到保护,例如捕获异常时
因此,如果我的理解是正确的,我的问题是,在使用jni时,是否有一种标准的方法/模式来解决这种情况
或者换一种说法,使用jni的流程是以避免这些问题的方式设计的吗?
或者这些问题预计不会发生
谢谢
# 1 楼答案
这些原则与任何多线程C应用程序没有区别:
Java虚拟机不为您的本机代码提供额外的保护,如果它失败或泄漏,您的虚拟机将失败或泄漏