2012-09-20 8 views
1

다음 스 니펫을 고려하십시오.코드 경로에서 명령어 수를 계산하는 방법은 무엇입니까?

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

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

날 촬영 명령의 수를 알 수있는 방법이 있나요 :

  • 각 반복
  • 각각 수동으로 ++step로 계산하지 않고/다른 결정

경우;

+0

정말 원하는 것은 라인이 실행 된 횟수입니다. 코드를 수정하지 않고 코드 커버리지 도구로이 작업을 수행 할 수 있습니다. –

+0

이것은 X-Y 질문과 다소 비슷합니다. 궁극적으로 특정 목표를 달성하려고하십니까? 아니면이 특정 사실을 알고 싶으십니까? – millimoose

+0

Peter, 회선이 몇 번 실행되는지 알려주는 도구는 무엇입니까? – JAM

답변

0

짧은 대답, 아니오.

javap을 사용하여 바이트 코드를 표시 할 수는 있지만 CPU 명령어로 직접 변환하지 않습니다 (이것이 의미하는 바라면). 지침의 수는 해석 여부, JIT 화 여부, 최적화 방법 및 기타 요인 (GC 옵션)에 따라 다릅니다.

1

Javap을 사용하여 이것을 JVM 명령어로 디스 어셈블 했습니까?

+0

출력을 사용하여 전체 반복/결정을 계산하는 방법은 무엇입니까? – JAM

+0

줄당 많은 JVM 명령어를 결정하고 계산할 필요가 있습니다. JIT 컴파일 메커니즘으로 인해 기본 명령어를 결정할 수 없습니다. –

관련 문제