JVM内存区域划分Eden Space\Survivor Space\Tenured Gen\Perm Gen
JVM区域分heap区和非heap区。
1)heap区:Eden Space(伊甸园),Survivor Space(幸存者区),Tenured Gen(老年代-养老区)。
2)非heap区:Code Cache(代码缓存区),Perm Gen(永久代),JVM Stack(java虚拟机栈),Local Method Stack(本地方法栈)。
HotSpot虚拟机GC算法采用分代收集算法:
1)一个对象New出来后会在Eden Space,GC会查看对象的引用,没有引用的对象就被回收,有引用的对象就进入Survivor Space
2)Survivor对象GC会定期查看, 如果对象死了,会被回收。来回检查几次,活着的对象就进入Tenured Gen。
3)Tenured Gen里面如果对象死了,也会被回收
分区的目的:
新对象比较多,但大多都是朝生夕灭的,所以直接采用标记-清理算法。
Tenured Gen生命力很强,采用复制算法。
非heap区
Perm Gen中放着类,方法的定义,
JVM stack放着参数,局域变量的引用,方法执行顺序按照栈的先入后出方式
学习并转载自 https://blog.csdn.net/aoxida/article/details/45061571
JVM内存区域划分Eden Space\Survivor Space\Tenured Gen\Perm Gen的更多相关文章
- JVM内存区域划分Eden Space、Survivor Space、Tenured Gen,Perm Gen解释
		以下内容转自:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=29632145&id=4616836 jvm区域总体分两 ... 
- JVM内存区域划分Eden Space、Survivor Space、Tenured Gen,Perm Gen解释(转)
		jvm区域总体分两类,heap区和非heap区.heap区又分:Eden Space(伊甸园).Survivor Space(幸存者区).Tenured Gen(老年代-养老区). 非heap区又分: ... 
- JVM内存区域划分Eden Space,Survivor Space,Tenured Gen,Perm Gen
		jvm区域总体分两类,heap区和非heap区.heap区又分:Eden Space(伊甸园).Survivor Space(幸存者区).Tenured Gen(老年代-养老区). 非heap区又分: ... 
- [转]JVM内存区域划分Eden Space、Survivor Space、Tenured Gen,Perm Gen解释
		jvm区域总体分两类,heap区和非heap区.heap区又分:Eden Space(伊甸园).Survivor Space(幸存者区).Tenured Gen(老年代-养老区). 非heap区又分: ... 
- JVM内存区域划分Eden Space、Survivor Space、Tenured Gen,Perm Gen解释 (生动形象)
		[转自]:https://blog.csdn.net/sd4015700/article/details/50109939 jvm区域总体分两类,heap区和非heap区.heap区又分:Eden S ... 
- JVM内存区域划分及垃圾回收
		第一部分.闲扯+概述 近来在研读<深入理解java虚拟机>一书,读完之后做个小结,算是记录一下自己的学习所得,在成长的路上,只能死磕. 要理解JVM,就要先从其内存区域划分开始,知道其由几 ... 
- JVM内存区域划分总结
		发现网上有两个版本的JVM内存划分,一个是按照<深入理解JVM虚拟机>上的版本,包含程序计数器等,按照是否线程共享划分. 另一个我觉得更好记一些,也更适合我自己,在这里记录一下. 首先上思 ... 
- JVM内存区域划分
		前言 Java程序的运行是通过Java虚拟机来实现的.通过类加载器将class字节码文件加载进JVM,然后根据预定的规则执行.Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同 ... 
- JVM内存区域划分(JDK6/7/8中的变化)
		前言 Java程序的运行是通过Java虚拟机来实现的.通过类加载器将class字节码文件加载进JVM,然后根据预定的规则执行.Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同 ... 
随机推荐
- Linux下Apache与httpd的区别与关系
			http://blog.csdn.net/yxfabcdefg/article/details/32324035 
- HttpServletRequest和HttpServletResponse简介
			http://blog.csdn.net/tong_xinglong/article/details/12972819 
- iOS -转载-根据字母排序
			1.从小到大自然排序NSDictionary *dic = @{", ", ", ", ", ", ", ", &quo ... 
- XML Publiser For Excel Template
			1.XML Publisher定义数据 2.XML Publisher定义模板 模板类型选择Microsoft Excel,默认输出类型选择Excel,上传.xls模板 3.定义并发程序 4.定义请求 ... 
- iOS开发之 -- 帧动画的使用
			在项目的开发过程中,我们经常会遇到使用动画的时候,比如我们在请求接口直接开始一个动画,请求结束后结束动画,下面我就给大家展示一个很方便的帧动画的用法: 代码如下: .h #import <Fou ... 
- ProcessBuilder执行本地命令
			/**关键技术剖析 * 用本命令名和命令的参数选项构造ProcessBuilder对象,它的start方法执行命令,启动一个进程,返回一个Process对象 * ProcessBuilder的envi ... 
- js实现购物车(源码)
			首先是页面布局html+css部分 <!doctype html><html lang="en"> <head> <meta chars ... 
- Java中Integer类的方法和request的setAttribute方法的使用与理解
			一.Integer类的使用方法 Interger:整数类型 1.属性. static int MAX_VALUE:返回最大的整型数: static int MIN_VALUE:返回最小的整型数: st ... 
- 2017 Multi-University Training Contest - Team 6—HDU6098&&HDU6106&&HDU6103
			HDU6098 Inversion 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6098 题目意思:题目很短,给出一个数组,下标从1开始,现在输出一个 ... 
- GROUP_CONCAT 拼接顺序
			用 group_concat 拼接后的顺序 group_concat(id order by id) 里面id更新需要更换 
