JVM 常用总结

JVM 常用总结

类加载子模块
启动类加载
由java.exe启动,java本身写的类,常用类
启动一般是静态属性,静态代码块,按照上下先写后写的顺续执行。一般在方法区
应用类加载
自己写的类,和第三方,java本身的类
扩展类加载
不常用类

数据执行模块
自己理解是他和GC一起合作使用,他需要GC分配,他不需要GC回收。执行引擎干的事及时取码–译码–执行,反复循环
常量池(类中的常量池数据
方法区(存放指令类)
堆(存放对象)
栈(调用栈,局部变量)
PC(程序计数器)

内存管理模块(GC)
判断是否是可以回收
采用计数法(使用的时候++,完成后–,但是不适用于有环的情况)等于=0时回收。
Hotspot采用的是可达性分析,在GC Roots中是 一些引用(静态属性,还有栈(栈帧)可以知道后面会使用那些引用,对不可达就回收
回收算法
空闲分区表(在大量数据时不实用,需要移送大量数据,时间复杂度高)如果不将数据合并,会出现大量外部碎片
分代回收
新生代
伊甸区(Eden)
存活区(survive)两个
老年代

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值