java-ed

 GC【垃圾回收】 *** 面试 +工作  heap + metaspace  1.什么是垃圾?     没有引用指向的对象GC:     1.哪些对象要被回收    which    2.什么时候被回收    when    3.采用什么方式回收    how1.哪些对象要被回收    which    1.引用计数法【了解】        给对象添加了一个引用计数器,引用一次 +1 引用失效 -1         计数器0 说明这个对象可以被回收         缺点:             循环引用 ,会导致 这个对象回收不了             Obejcet a = new Object(); +1            Obejcet b = new Object(); +1            a.xxx=b  +1             b.xxx=a  +1            a.xxx=b  +1             a =>2            b =>3             a=null     a =>1            b=null  b =>2     2.根节点可达性分析什么是GCroot?    1.栈    2.方法区    3.native stack2.when +how采用什么方式回收?    1.理论:=》 gc算法     2.落地:=》垃圾收集器  gc算法:     1.标记清除: mark-sweep         标记: 标记哪些对象要被清除【根节点可达性分析】        清除:垃圾对象进行清除        缺点: 内存碎片        stop the world =》 stw 暂停应用    2.标记整理:         标记: 标记哪些对象要被清除【根节点可达性分析】 进行清除        整理:移动活的对象 进行内存整理    3.复制:        1.把内存分成大小相同的两片        2.浪费了一些内存         3.没碎片对象:     夭折:90%     老不死的:old   0-15  15 这个对象是足够的老    不灭的:class 、pool年轻代参数:    -Xmnsize  =》 年轻代     XX:SurvivorRatio=ratio  =》 8:1:1 垃圾收集器 :    1.串行垃圾收集器    2.并行垃圾收集器    3.并发垃圾收集器    4.G1垃圾收集器【比较复杂】1.串行垃圾收集器    1.一个线程处理垃圾回收    2.stw          app=>gc=>app 2.并行垃圾收集器    1.多个线程处理垃圾回收    2.比 串行垃圾收集器 stw时间短3.并发垃圾收集器    你的程序线程 和 gc线程 并发执行    没有stw分代算法:     年轻代  老年代1.年轻代    1.年轻代:串行         -Xms5m -Xmx5m -XX:+PrintGCDetails -XX:+UseSerialGC        DefNew 年轻代 串行垃圾回收器        Tenured 老年代 串行垃圾回收器打印    2.年轻代:ParNew(并行)        -Xms5m -Xmx5m -XX:+PrintGCDetails -XX:+UseParNewGC        ParNew 年轻代 并行垃圾回收器        Tenured 老年代 串行垃圾回收器打印    3.年轻代:Parallel Scavenge(并发)  jinfo         -Xms5m -Xmx5m -XX:+PrintGCDetails -XX:+UseParallelGC        PSYoungGen 年轻代 并发垃圾回收器        ParOldGen 老年代 并行垃圾回收器    注意:         可以从单单 一个方面入手 eg:年轻代  老年代的gc 就确定了2.老年代    1.老年代:串行 【用不了】        -Xms5m -Xmx5m -XX:+PrintGCDetails -XX:+UseSerialOldGC【参数没有找到】        2.老年代:Parallel old(并行)        -Xms5m -Xmx5m -XX:+PrintGCDetails -XX:+UseParallelOldGC        PSYoungGen 年轻代 并发垃圾回收器        ParOldGen 老年代 串行垃圾回收器打印    3.CMS(并发标记清除)        1.目的             gc =》 停顿的时间比较短        -Xms5m -Xmx5m -XX:+PrintGCDetails -XX:+UseConcMarkSweepGC        ParNew 年轻代 并发垃圾回收器        CMS 老年代 cms垃圾回收器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值