import java.lang.ref.PhantomReference; import java.lang.ref.ReferenceQueue; import java.util.ArrayList; import java.util.List; /** 功能描述 @since 2021-12-03 */ public class Test { public static ...
package com.hihonor.appsearch.utils;
import java.lang.ref.PhantomReference; import java.lang.ref.ReferenceQueue; import java.util.ArrayList; import java.util.List;
/**
功能描述 @since 2021-12-03 */ public class Test { public static void main(String[] args) { List values=new ArrayList<>(); ReferenceQueue referenceQueue=new ReferenceQueue(); PhantomReference<List> weakReference=new PhantomReference<>(values,referenceQueue); for(int i=0;i<1000000000;i++){ final List strings = weakReference.get(); if (strings==null){ values=new ArrayList<>(); values.add(i+""); System.out.println(i+""); } } } } 针对大数据集的list实现数据加入操作,执行过程中没有出现oom异常信息,这个给出了一个典型的代码优化方向。 使用虚引用,若引用来代替进行代码开发,可以减少执行过程中出现的oom数据异常情况的。使用相当少量的代码就可以完成对应的代码实现效果的。将会是我后期书写代码的优化方向的。
本站主要用于日常笔记的记录和生活日志。本站不保证所有内容信息可靠!(大多数文章属于搬运!)如有版权问题,请联系我立即删除:“abcdsjx@126.com”。
QQ: 1164453243
邮箱: abcdsjx@126.com