在JVM中将对象的引用分为了四类:
强引用:在GC阶段不会被垃圾回收
软引用:在GC阶段可能会被回收
弱引用:在GC阶段肯定会被回收
虚引用:不会影响对象的GC,当对象被GC的时候会得到一个通知
如果用JVM做缓存的,考虑到缓存的性质,缓存中的数据并不是需要一直存在在jvm的整个生命周期中,所以可以在内存不够用的时候进行回收,所以可以使用软引用、弱引用的数据结构,如WeakHashMap,根据业务需求选择相应的数据结构。
在JVM中将对象的引用分为了四类:
强引用:在GC阶段不会被垃圾回收
软引用:在GC阶段可能会被回收
弱引用:在GC阶段肯定会被回收
虚引用:不会影响对象的GC,当对象被GC的时候会得到一个通知
如果用JVM做缓存的,考虑到缓存的性质,缓存中的数据并不是需要一直存在在jvm的整个生命周期中,所以可以在内存不够用的时候进行回收,所以可以使用软引用、弱引用的数据结构,如WeakHashMap,根据业务需求选择相应的数据结构。