如何计算代码路径中的指令数?

时间:2012-09-20 16:44:34

标签: java

请考虑以下代码段。

        for (int i = targetIndex; i < totalInTarget; i++) {
            ++step;
            _KVPair kvp = target.get(i);

            if (previousKey == null) {
                ++step;
                currentKey = kvp.getKey();
                  ...

有没有办法让我知道所采用的指令数量:

  • 每次迭代
  • 每个if / else决定

无需使用++step;

手动计算它们

2 个答案:

答案 0 :(得分:1)

您是否考虑过使用Javap将其反汇编为JVM指令?

答案 1 :(得分:0)

简短回答,不。

您可以使用javap向您显示字节码,但这并不能直接转换为CPU指令(如果这就是您的意思)。指令的数量将根据其是否被解释或JIT,如何优化以及可能的其他因素(GC选项?)而变化。