jvm記憶體結構

2021-09-26 05:43:18 字數 409 閱讀 2276

方法區用於存放類(class檔案)的相關資訊,如類名,訪問修飾符、常量池、字段描述、方法描述等資訊。

方法區的一部分,存放編譯時期生成的各種字面量和符號引用,例如:字串!

每個方法被執行的時候都會同時建立乙個棧幀用於存放方法內部的區域性變數等資訊。每乙個方法被呼叫直至執行完成的過程,就對應著乙個棧幀在虛擬機器棧中從入棧到出棧的過程。特別強調,方法內部如果有物件例項,那麼棧幀存放的是物件的引用而非物件本身!

為虛擬機器使用到的native方法服務。

所有物件例項以及陣列都要在堆上分配。

當前執行緒所執行的位元組碼的行號指示器,位元組碼指示器通過改變這個計數器的值來選取下一條需要執行的位元組碼指令。

JVM記憶體結構

所有的j a開發人員可能會遇到這樣的困惑?我該為堆記憶體設定多大空間呢?outofmemoryerror的異常到底涉及到執行時資料的哪塊區域?該怎麼解決呢?其實如果你經常解決伺服器效能問題,那麼這些問題就會變的非常常見,了解 jvm記憶體也是為了伺服器出現效能問題的時候可以快速的了解那塊的記憶體區域...

JVM記憶體結構

以下所寫jvm內容都是基於hotspot。定義 j a virtual machine j a程式的執行環境 j a 二進位制位元組碼的執行環境 好處 比較 jvm指令 直譯器 機器碼 cpu 1 程式計數器 cpu中的暫存器實現 定義 program counter register 程式計數器 ...

jvm記憶體結構(一)

學習之餘,整理了下jvm的資料 堆 需要重點關注的一塊區域,涉及到記憶體的分配與 方法區 用於儲存已經被虛擬機器載入的類資訊 常量 靜態變數等資料,也叫永久區 常量池 用於存放編譯期生成的各種字面量和符號引用 jdk6在方法區 jdk7在堆中 虛擬機器棧 棧裡面存放著各種基本資料型別和物件的引用 方...