jvm小结

1.jvm组成部分:类加载器,运行数据区也就是内存,字节码执行引擎
2.虚拟机栈也就是线程栈,jvm给方法单独开辟一个空间,栈针可以理解为栈的id
3.先分配的内存最后释放
4.操作数栈是给放入栈的局部变量赋值运算的临时栈
5.程序计数器的值是由执行引擎修改的
6.栈里面有栈针,通过指针引用就可以找到堆里面的对象
7.本地方法栈的空间也是在线程栈里
8.元空间里是常量静态变量,类信息
9.对象先存到eden区 满了之后由执行引擎开启垃圾收集minor gc
10.可达性分析也就是以gc root 查找对象引用,有引用的对象被标记然后放到survior区,
每次gc的对象年龄就加1,超过15就进入老年代
11.老年代满了触发full gc 如果不能回收就oom了
12.Jvm调优是减少full gc通过减少full gc 避免stw
13.之所以设计stw目的是查找gc对象,保证对象的正常状态
14对象变量的计算=类型属性之和一般不超过一个对象不超过1kb
15.例如每秒60m的对象放入eden
16大的对象可能直接放入老年代触发full gc
解决办法:调大新生代内存
17 G1把内存分为各个小块,这样清理和插入并行,效率提高,不会出现stw

18.三种回收内存的方法
1.ms ,copy,mc copy效率最高不会产生碎片
2.G1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值