在项目运行时,OOM异常是比较处理的,因为从日志看出的发生异常的代码点可能仅仅是最后一根稻草,从中可能未必能发现OOM的原因,而且OOM未必是固定重现的. 上医治未病,与其等OOM问题发生时再通过看日志等手段判断问题,还不如在开发时就注意内存的使用性能,在本人的其它博客里,提到过如何在代码里提升内存使用性能的操作要点,在这篇博文里,就从强弱软引用这个角度来给出些使用技巧. 1 内存对象上如果有强引用,该对象就无法被回收(回收的条件) 不论是轻量级回收还是Full GC,我们都无法回避这样一个问题…