性能问题_03gc相关概念

参考文章 :

  • Java对象的强、软、弱和虚引用原理+结合ReferenceQueue对象构造Java对象的高速缓存器
  • 强引用 软引用 弱引用 虚引用&ReferenceQueue Reference分析

一、Java对象的强、软、弱、虚引用:

1.1 强引用 :
1.2 弱引用 :
  • 1、如果一个对象只具有软引用, 则内存空间足够, 垃圾回收器就不会回收它, 如果内存空间不足了, 就会回收这些对象的内存.
  • 2、软引用可以和一个引用队列(ReferenceQueue)联合使用, 如果软引用所引用的对象被垃圾回收器回收, java虚拟机就会把这个软引用加入到与之关联的引用队列中;
1.3 弱引用 :
  • 1、弱引用与软引用的区别在于: 只具有弱引用的对象拥有更短暂的生命周期, 在垃圾回收器线程扫描它所管辖的内存区域的过程中, 一旦发现了只具有弱引用的对象, 不管当前内存空间是否足够, 都会回收它.
  • 2、弱引用可以和一个引用队列(ReferenceQueue)联合使用, 如果弱引用所引用的对象被垃圾回收器回收, java虚拟机就会把这个弱引用加入到与之关联的引用队列中;

你可能感兴趣的:(性能问题_03gc相关概念)