首页 > 其他 > 详细

JVM中的JIT

时间:2017-07-19 20:07:44      阅读:172      评论:0      收藏:0      [点我收藏+]

 

JVM中的JIT  


 

 

 

介绍Java虚拟机的文章或者书籍总会提到Java虚拟机中的JIT编译器,可是JIT编译器到底是什么?为什么需要JIT编译呢?


JIT编译器,是Just In Time编译的意思,又称即时编译。
 
Java程序是先从源代码编译到字节码,然后由Java虚拟机来解释执行字节码。当Java虚拟机在解释执行一个Java程序的字节码的时候,正常情况下Java虚拟机是解释一句执行一句,直到程序运行完毕。但是,很多程序中都存在一些”热点“区域,这些区域的代码会被反复调用执行,这样同一段代码就会被Java虚拟机反复的解释,这就导致了Java虚拟机执行效率的低下。为了应对这种情况,Java虚拟机就在执行Java字节码的过程中把检测到的反复执行的”热点“区域代码给编译成机器码,让后边对这段代码的调用可以不用再解释,提高执行效率,这个编译过程就叫JIT编译,因为编译是在字节码解释执行的过程中完成的,所以被称即时编译。
 
Java虚拟机在执行Java字节码的过程中不会对所有的字节码进行即时编译,因为只执行一次的字节码没必要编译成机器码,直接解释执行比即时编译还快。 

JVM中的JIT

原文:http://www.cnblogs.com/zhangzl419/p/7207420.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!