初始JVM架构

Jvm 的基础

解码:

内存分配:

GC:

双亲委派机制:

public Launcher() {
    // 首先加载 ExtClassLoader
    ClassLoader extcl;
    try {
        extcl = ExtClassLoader.getExtClassLoader();
    } catch (IOException e) {
        throw new InternalError(
            "Could not create extension class loader", e);
    }

    // 首先加载 AppClassLoader
    try {
        loader = AppClassLoader.getAppClassLoader(extcl);
    } catch (IOException e) {
        throw new InternalError(
            "Could not create application class loader", e);
    }
}

分代收集:理论

强分代:对象是朝生夕灭的。

弱分代:熬过越多次垃圾收集的过程的对象就越难以消亡。

所以他会将容易回收的对象放到一堆里,不容易回收的放到一堆里,从而在回收的时候在容易回收的对象中可以重点关注一下,而不容易的回收的对象就少关注一些,这样就能以低代价进行回收。

Java的虚拟机垃圾回收的实现里出现了,年轻代,老年代的概念。

所以新生代里放的都是些容易回收的对象,在新生代中回收不掉的放到老年代里面。

因为老年代里的对象一直回收不掉,他还会引用新生代的里面的对象,导致新生代里的对象也回收不掉,就跨代引用了,跨代引用,他就会遍历一次老年代里的对象,这增加了负担。

所以为了减少去扫描老年代,我就弄一个记忆集合,他把老年代分成小块结构,标记一下那一块的老年代里有跨代,这样就少遍历老年代里的对象。

这对象也跟着就进老年堆了。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值