开发者社区> 问答> 正文

[@倚贤][¥20]jvm对频繁调用的方法做了哪些优化?

jvm对频繁调用的方法做了哪些优化?

展开
收起
景凌凯 2018-10-29 23:41:33 2757 0
4 条回答
写回答
取消 提交回答
  • 引入了JIT编译器来弥补解释器的缺点。执行引擎首先作为解释器运行,并在适当的时候,JIT编译器编译整个字节码以将其更改为本机代码。之后,执行引擎不再解释该方法,而是直接使用本机代码执行。本地代码中的执行比逐个解释指令要快得多。由于本机代码存储在高速缓存中,因此可以快速执行编译的代码

    2019-07-17 23:10:56
    赞同 展开评论 打赏
  • 可以参考下《Java性能权威指南》的第4章:JIT编译器

    2019-07-17 23:10:56
    赞同 展开评论 打赏
  • 全栈工程师,从事了 12 年以 Java 语⾔为主的软件开发工作,热衷于整合框架与开发工具,关注 交互设计,喜欢写技术博客(http://codelife.me/),Linux拥趸,问题终结者。近期开始学习和关注 Elixir 函数语言,合作翻译了《Elixir 程序设计》。

    早期的 JVM 使用 JIT 技术,就是运行时编译,第一执行时把字节码编译成机器码,但是这样代码需要执行一段时间才能预热。后来有了 hotspot 技术,对于执行次数足够多的方法,判定为热代码,才编译成机器码。那些不热的代码还是采用解释执行。这样就缓解了预热的问题。

    2019-07-17 23:10:56
    赞同 展开评论 打赏
  • 我也不知道

    2019-07-17 23:10:56
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
JVM实战 立即下载
JVM的GC 立即下载
基于JVM的脚本语言开发、运用实践 立即下载