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.
部署Hadoop(3.3.0)伪分布式集群
2.
从0开始搭建hadoop伪分布式集群(三:Zookeeper)
3.
centos7 vmware 搭建集群
4.
jsp的page指令
5.
Sql Server 2008R2 安装教程
6.
python:模块导入import问题总结
7.
Java控制修饰符,子类与父类,组合重载覆盖等问题
8.
(实测)Discuz修改论坛最后发表的帖子的链接为静态地址
9.
java参数传递时,究竟传递的是什么
10.
Linux---文件查看(4)
本站公众号
欢迎关注本站公众号,获取更多信息
相关文章
1.
深刻理解jvm运行时区域
2.
深入JVM 运行时数据区域
3.
深刻理解JVM —— Java运行时数据区域
4.
一 .JVM 运行时数据区域
5.
【JVM:一】Java运行时数据区域
6.
JVM运行时数据区域(一)
7.
JVM(一) 运行时数据区域
8.
jvm(一)---------------运行时数据区域
9.
JVM(一)JAVA 运行时数据区域
10.
深刻浅出Java虚拟机(三)——运行时数据区
>>更多相关文章<<