JavaShuo
欄目
標籤
深刻淺出JVM(一):運行時數據區域
時間 2019-11-12
標籤
深刻
jvm
運行時
數據
區域
欄目
Java
简体版
原文
原文鏈接
程序計數器
線程私有
指向了正在執行的虛擬機字節碼指令的地址;若是是本地方法,數值爲空
沒有 OutOfMemoryError 錯誤的區域
Java虛擬機棧
線程私有;
生命週期與線程相同;
表明着 Java 方法執行的內存模型:每一個方法執行時的同時會建立一個棧幀(Stack Frame)用於存放
局部比量表、操做數棧、動態連接、方法出口
等信息。
每一個方法從調用到執行完畢的過程,對應着每個棧幀在虛擬機棧中入棧到出棧的過程。
若是線程請求的棧深度大於虛擬機容許的深度,跑出 StackOverflowError 異常;沒法申請到足夠的內存,拋出 OutOfMemoryError 錯誤。
本地方法棧
線程私有;
和 Java 虛擬機棧相似,可是是爲 Native 方法服務。
Java 堆
線程共享;
Java 虛擬機中內存最大的一塊;
唯一的做用是存放對象實例:
全部的對象實例以及數組都要在堆上分配
;
是垃圾收集器的主要區域。詳細區分的話,能夠分爲新生代和老年代,再細緻的話,能夠分爲 Eden 空間、 From Surivor 空間、 To Surivor 空間;
Java 堆能夠處於物理上不連續的內存空間中,只要邏輯是連續的便可。 主流的虛擬機經過
-Xms
和
-Xmx
控制;
若是堆中沒有內存完成實例分配,而且堆沒法再拓展時,拋出 OutOfMemoryError 錯誤。
方法區
線程共享;
存儲已被虛擬機加載的類信息、常量、靜態變量、即時編譯器編譯後的代碼等數據;
已被稱爲 Non-Heap;
有時候被稱爲
永久帶
,緣由:HotSpot 虛擬機將GC分帶收集拓展至方法區;
方法區內存沒法知足內存分配需求時,拋出 OutOfMemoryError 錯誤。
java
####運行時常量池
方法區的一部分;
存放編譯期產生的各類字面量和符號引用;
OOM 報錯和方法區一致。
相關文章
1.
深刻理解jvm運行時區域
2.
深入JVM 運行時數據區域
3.
深刻理解JVM —— Java運行時數據區域
4.
一 .JVM 運行時數據區域
5.
【JVM:一】Java運行時數據區域
6.
JVM運行時數據區域(一)
7.
JVM(一) 運行時數據區域
8.
jvm(一)---------------運行時數據區域
9.
JVM(一)JAVA 運行時數據區域
10.
深刻淺出Java虛擬機(三)——運行時數據區
更多相關文章...
•
XSL-FO 區域
-
XSL-FO 教程
•
PHP 5 時區
-
PHP參考手冊
•
Flink 數據傳輸及反壓詳解
•
TiDB 在摩拜單車在線數據業務的應用和實踐
相關標籤/搜索
深刻淺出-JVM
深刻淺出
深刻淺出spring
深刻淺出ORACLE
深刻淺出jQuery
深刻淺出Node.js
深刻淺出NodeJS
深刻淺出MFC
深刻淺出express
深刻淺出Python
Java
Redis教程
MySQL教程
NoSQL教程
JVM
數據傳輸
數據庫
0
分享到微博
分享到微信
分享到QQ
每日一句
每一个你不满意的现在,都有一个你没有努力的曾经。
最新文章
1.
融合阿里雲,牛客助您找到心儀好工作
2.
解決jdbc(jdbctemplate)在測試類時不報錯在TomCatb部署後報錯
3.
解決PyCharm GoLand IntelliJ 等 JetBrains 系列 IDE無法輸入中文
4.
vue+ant design中關於圖片請求不顯示的問題。
5.
insufficient memory && Native memory allocation (malloc) failed
6.
解決IDEA用Maven創建的Web工程不能創建Java Class文件的問題
7.
[已解決] Error: Cannot download ‘https://start.spring.io/starter.zip?
8.
在idea讓java文件夾正常使用
9.
Eclipse啓動提示「subversive connector discovery」
10.
帥某-技巧-快速轉帖博主文章(article_content)
本站公眾號
歡迎關注本站公眾號,獲取更多信息
相關文章
1.
深刻理解jvm運行時區域
2.
深入JVM 運行時數據區域
3.
深刻理解JVM —— Java運行時數據區域
4.
一 .JVM 運行時數據區域
5.
【JVM:一】Java運行時數據區域
6.
JVM運行時數據區域(一)
7.
JVM(一) 運行時數據區域
8.
jvm(一)---------------運行時數據區域
9.
JVM(一)JAVA 運行時數據區域
10.
深刻淺出Java虛擬機(三)——運行時數據區
>>更多相關文章<<