Oracle® Solaris Studio 12.4:性能分析器

退出打印视图

更新时间: 2015 年 1 月
 
 

Java 本机函数

本机代码是最初用 C、C++ 或 Fortran 编写,由 Java 代码通过 Java 本地接口 (Java Native Interface, JNI) 调用的已编译代码。 以下示例来自与演示程序 jsynprog 关联的文件 jsynprog.java 的带注释的反汇编代码。

                     5. class jsynprog
                        <Function: jsynprog.<init>()>
0.       5.504          jsynprog.JavaCC() <Java native method>
0.       1.431          jsynprog.JavaCJava(int) <Java native method>
0.       5.684          jsynprog.JavaJavaC(int) <Java native method>
0.       0.             [  5] 00000000: aload_0
0.       0.             [  5] 00000001: invokespecial <init>()
0.       0.             [  5] 00000004: return

由于本机方法不包含在 Java 源代码中,jsynprog.java 的带注释的源代码的开头会显示每个 Java 本机方法,并使用一个特殊的索引行来指示不带行号的指令。

0.       5.504          <Function: jsynprog.JavaCC(), instructions without line 
                           numbers>
0.       1.431          <Function: jsynprog.JavaCJava(int), instructions without line 
                           numbers>
0.       5.684          <Function: jsynprog.JavaJavaC(int), instructions without line 
                           numbers>

注 -  在实际的带注释的源代码显示中,索引行并不换行。