<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    常用鏈接

    統計

    最新評論

    關于java的JIT知識(轉)

    什么是JIT

    JIT是just in time,即時編譯技術。使用該技術,能夠加速java程序的執行速度。下面,就對該技術做個簡單的講解。

    首先,我們大家都知道,通常javac將程序源代碼編譯,轉換成java字節碼,JVM通過解釋字節碼將其翻譯成對應的機器指令,逐條讀入,逐條解釋翻譯。很顯然,經過解釋執行,其執行速度必然會比可執行的二進制字節碼程序慢。為了提高執行速度,引入了JIT技術。

    在運行時JIT會把翻譯過的機器碼保存起來,已備下次使用,因此從理論上來說,采用該JIT技術可以,可以接近以前純編譯技術。下面我看看,JIT的工作過程。

    JIT 編譯過程

    JIT編譯啟用時(默認是啟用的),JVM讀入.class文件解釋后,將其發給JIT編譯器。JIT編譯器將字節碼編譯成本機機器代碼,下圖展示了該過程。

    什么是JIT?

    JIT是just in time,即時編譯技術。使用該技術,能夠加速java程序的執行速度。下面,就對該技術做個簡單的講解。

    首先,我們大家都知道,通常javac將程序源代碼編譯,轉換成java字節碼,JVM通過解釋字節碼將其翻譯成對應的機器指令,逐條讀入,逐條解釋翻譯。很顯然,經過解釋執行,其執行速度必然會比可執行的二進制字節碼程序慢。為了提高執行速度,引入了JIT技術。

    在運行時JIT會把翻譯過的機器碼保存起來,已備下次使用,因此從理論上來說,采用該JIT技術可以,可以接近以前純編譯技術。下面我看看,JIT的工作過程。

    JIT 編譯過程

    JIT編譯啟用時(默認是啟用的),JVM讀入.class文件解釋后,將其發給JIT編譯器。JIT編譯器將字節碼編譯成本機機器代碼,下圖展示了該過程。


    Graphic

     

    通過上面的解釋,我們了解了JIT的工作原理及過程,同樣也發現了個問題,由于JIT對每條字節碼都進行編譯,造成了編譯過程負擔過重。為了避免這種情況,當前的JIT只對經常執行的字節碼進行編譯,如循環等。

    需要說明的是,JIT并不總是奏效,不能期望JIT一定能夠加速你代碼執行的速度,更糟糕的是她有可能降低代碼的執行速度。這取決于你的代碼結構,當然很多情況下我們還是能夠如愿以償的。

    posted on 2009-01-13 14:18 九寶 閱讀(2136) 評論(0)  編輯  收藏 所屬分類: Java

    主站蜘蛛池模板: 嫩草在线视频www免费观看| 相泽南亚洲一区二区在线播放| sihu国产精品永久免费| 亚洲av麻豆aⅴ无码电影| 黄色a级片免费看| 免费人妻无码不卡中文字幕18禁| 亚洲av无码一区二区三区天堂 | 国产亚洲女在线线精品| 波多野结衣久久高清免费| 亚洲第一成年免费网站| 免费一级毛片不卡不收费| 国产亚洲男人的天堂在线观看| www.亚洲色图.com| 国产精品综合专区中文字幕免费播放| 亚洲综合色区在线观看| 免费人成网站在线观看不卡| 亚洲性天天干天天摸| 成人免费视频网站www| 亚洲精品无码成人| 久久久久亚洲?V成人无码| 免费人成毛片动漫在线播放| 亚洲最大在线观看| 日韩免费高清视频网站| 日本激情猛烈在线看免费观看| 亚洲乱码中文字幕综合| 精品无码无人网站免费视频 | 久久精品国产精品亚洲毛片| 黄网站色在线视频免费观看| 亚洲av永久中文无码精品综合| 亚洲第一视频在线观看免费| 国产自国产自愉自愉免费24区| 亚洲欧洲国产综合| 免费一级毛片在线播放| 国产精成人品日日拍夜夜免费| 亚洲AV日韩综合一区尤物| 国产成人亚洲精品影院| 中文字幕免费视频一| 无码天堂va亚洲va在线va| 国产亚洲综合成人91精品| 天天干在线免费视频| 光棍天堂免费手机观看在线观看|