当从Java调用C中定义的方法(使用JNI)时,在JVM中调用的方法是什么?执行流程是什么样的?
public native void display()
。当从java代码调用此方法为object.display()
时,当执行继续执行本机代码时,调用的内部JVM方法是什么?答案 0 :(得分:1)
如果你想看看确切的执行链,我建议使用gdb(或CLion)连接到JVM并查看backtrace。
看一看如何做到这一点:
你也可以看一下:
https://www.youtube.com/watch?v=8Cjeq4l5COU
一旦连接到JVM,就可以在C代码中设置断点并从上到下检查回溯。
或者,您可以创建SIGSEGV并生成JVM的完整回溯(请查看此处:http://jnicookbook.owsiak.org/recipe-No-015/)