如何配置用C编写的Java Native Interface库?
我知道通常的C分析器,但我的问题是如何分析 整个 集,包括对JVM方法的调用,这可能会减慢程序的速度
答案 0 :(得分:4)
经过对此处提出的一些方法的一些研究和测试后,我最终使用了sprof
。
基本上我按照可用的说明in this answer进行操作。一些评论:
LD_PROFILE_OUTPUT
留空以便在/var/tmp/
中获得结果,否则不会生成输出文件。LD_PROFILE=libXXXX.so
为了获取配置文件,我运行了加载和使用本机JNI库的Java代码,我得到了一个包含分析结果的文件:
/var/tmp/libXXXX.so.profile
获得文件后,您可以使用以下命令阅读:
sprof /path/to/libXXXX.so /var/tmp/libXXXX.so.profile
分析结果遵循与gprof
相同的模板。 Here您可以找到内容及其含义的说明。