Java 的混合执行模式
生活随笔
收集整理的這篇文章主要介紹了
Java 的混合执行模式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
導航
- 解釋執行與編譯執行
- 總結
解釋執行與編譯執行
Java 雖然是先編譯再運行,但實際上,對于 JVM 來說,依然是逐條解釋執行字節碼文件中的指令,即大部分情況下,Java 都是解釋執行的。
JVM通過 interpreter 解釋器解釋執行字節碼指令,JIT(just in time) 編譯器可以在某些情況下實現即時編譯。它可以將Java 代碼編譯成本地代碼,例如直接編譯為 exe 文件,提高執行效率。
簡單的來說,JVM 會針對熱點代碼進行即時編譯。
例如在一個循環場景中,JVM 會對方法調用進行計數,如果發現某些函數調用頻次非常高,可能就會觸發編譯執行。
Java 默認采用混合模式,即解釋執行 + 編譯執行。
相關JVM 參數:XX: CompileThreshold=10000
總結
解釋器:
bytecode intepreter
JIT 編譯器:
Just In Time Compiler
混合模式:
Java 默認采用混合模式執行代碼,即 :
起始階段解釋器解釋執行 + 熱點代碼編譯執行
熱點代碼檢測:
方法計數器 - 檢測方法執行頻次
循環計數器 - 檢測循環執行頻次
總結
以上是生活随笔為你收集整理的Java 的混合执行模式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: GenseeSDK 使用Kotlin要注
- 下一篇: 正则只能小于0负数_2019–2020学