JVM之四大引用下模拟内存泄漏的GC日志分析

    /**强引用*/
    static void strongReference(){
        List<byte[]> cache=new ArrayList<>();
        cache.add(new byte[1024*1024]);
        cache.add(new byte[1024*1024]);
        cache.add(new byte[1024*1024]);
        cache.add(new byte[1024*1024]);
    }
    /**软引用(此引用引用的对象生命力比强引用要弱一些,在内存不足时,对象会被销毁)*/
    static void softReference(){
        List<SoftReference> cache=new ArrayList<>();
        cache.add(new SoftReference(new byte[1024*1024]));
        cache.add(new SoftReference(new byte[1024*1024]));
        cache.add(new SoftReference(new byte[1024*1024]));
        cache.add(new SoftReference(new byte[1024*1024]));
        //使用cache.get(0).get()
    }
    /**弱引用(此引用引用的对象生命比较弱,比软引用还要弱,在触发GC时,对象会被销毁)*/
    static void weakReference(){
        List<WeakReference> cache=new ArrayList<>();
        cache.add(new WeakReference(new byte[1024*1024]));
        cache.add(new WeakReference(
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值