當前位置:生活全書館 >

IT科技

> jit java

jit java

<link rel="stylesheet" href="https://js.how234.com/third-party/SyntaxHighlighter/shCoreDefault.css" type="text/css" /><script type="text/javascript" src="https://js.how234.com/third-party/SyntaxHighlighter/shCore.js"></script><script type="text/javascript"> SyntaxHighlighter.all(); </script>

java jit是什麼,讓我們一起了解一下?

jit是即時編譯器,這是是針對解釋型語言而言的,而且並非虛擬機必須,也是一種優化手段,Java的商用虛擬機HotSpot就有這種技術手段,Java虛擬機標準對JIT的存在沒有作出任何規範,所以這是虛擬機實現的自定義優化技術。

HotSpot虛擬機的執行引擎在執行Java代碼是可以採用【解釋執行】和【編譯執行】兩種方式的,如果採用的是編譯執行方式,那麼就會使用到JIT,而解釋執行就不會使用到JIT,所以,早期説Java是解釋型語言,是沒有任何問題的,而在擁有JIT的Java虛擬機環境下,説Java是解釋型語言嚴格意義上已經不正確了。

java jit

HotSpot中的編譯器是javac,他的工作是將源代碼編譯成字節碼,這部分工作是完全獨立的,完全不需要運行時參與,所以Java程序的編譯是半獨立的實現。有了字節碼,就有解釋器來進行解釋執行,這是早期虛擬機的工作流程,後來,虛擬機會將執行頻率高的方法或語句塊通過JIT編譯成本地機器碼,提高了代碼執行的效率,至此你已經瞭解了JIT在Java虛擬機中所處的地位和工作的主要內容。

示例代碼操作:混合模式

C:UsersAdministrator>java -versionjava version "1.8.0_144"Java(TM) SE Runtime Environment (build 1.8.0_144-b01)Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)```shellC:UsersAdministrator>java -versionjava version "1.8.0_144"Java(TM) SE Runtime Environment (build 1.8.0_144-b01)Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)

標籤: java jit
  • 文章版權屬於文章作者所有,轉載請註明 https://shqsg.com/zh-mo/dianzi/lkp4k3.html