如何通过软引用和弱引用提升JVM内存使用效率?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何通过软引用和弱引用提升JVM内存使用效率?相关的知识,希望对你有一定的参考价值。

引用类型:强引用(new),虚引用,软引用,弱引用
1.软引用(SoftReference)
如果一个对象只具有软引用,而当前虚拟机堆栈内存足够,那么垃圾回收器就不会回收它,反之就会回收这些软引用指向的对象。
2.弱引用(WeakReference)与软引用的区别
垃圾回收器一旦发现某块内存上只有弱引用,不管当前内存空间是否足够,那么都会回收这块内存。
2.通过软引用/弱引用提升内存性能
1)内存足够时,无需用软引用。
2)用缓存提升效率
先去缓存中查询,查询到返回;查询不到,去数据库中查询, 将获取内容存储在缓存,返回。
eg:软引用/弱引用做缓存
3)为什么不用强引用做缓存
强引用不能回收

以上是关于如何通过软引用和弱引用提升JVM内存使用效率?的主要内容,如果未能解决你的问题,请参考以下文章

使用软引用和弱引用防止内存溢出

Android内存调优的一些方法

java中弱引用是怎么回事啊?

java的四种引用,强弱软虚

java 强弱软虚 四种引用,以及用到的场景

Java学习之强引用,弱引用,软引用 与 JVM