JMV-內存管理-運行時數據區域

JMV-內存管理-運行時數據區域

簡介

  Java虛擬機在執行Java程序的過程中會把它所管理的內存劃分爲若干個不同的數據區域。每個區域有各自的用途,創建時間以及銷燬時間。有的區域隨着虛擬機的進程啓動而存在,有的則是依賴用戶線程的啓動和結束而建立和銷燬。根據《Java虛擬機規範(第2版)》的規定JVM所管理的內存分爲以下幾個運行時數據區:程序計數器、Java虛擬機棧、本地方法棧、Java堆、方法區。
  正文內容中的內容轉載與《Java虛擬機原理圖解》3、JVM運行時數據區。歸納的很全面並且圖形化印象更深。

運行時數據區結構與說明

JVM運行時數據區裏有什麼?

運行時數據區結構

虛擬機棧 是什麼?虛擬機棧裏有什麼?

虛擬機棧

棧幀是什麼?棧幀裏有什麼?

棧幀

方法區是什麼?方法區裏有什麼?

方法區

總結

開發過程中的內存溢出相信對每個人都不陌生,整體搞清楚運行時數據區之後,能更深刻的瞭解他們發生的深層次的原因,下一章整理出現各種內存溢出的異常來相互印證,加深理解。

發佈了217 篇原創文章 · 獲贊 1200 · 訪問量 84萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章