2012-03-16 1 views

답변

2

일종의. Tail-recursive 메서드는 매우 쉽게 루프로 변환 될 수 있습니다. 그렇지 않으면, JITC는 "언 롤링 (unrolling)"의 일종으로 몇몇 호출을 인라인 할 수 있습니다.

달의 위상과 요일에 따라 다르지만, 많은 요인이 JITC의 결정에 영향을 미칩니다.

+0

그러나 루프로 변환되면 스택 프레임 당 로컬 변수의 값이 손실되지 않습니까? 또는 JITC가이를 처리합니까? – shrini1000

+0

동일한 결과 (부작용 포함)가 있음을 보장 할 수 없다면 JITter는이를 수행 할 수 없습니다. 그러나 추가 임시 변수를 최적화 할 수 없다는 것은 없습니다. –

+3

사실, Java JIT 컴파일러 **는 꼬리 호출을 루프로 변환 할 수 없습니다 **. –