强软弱虚
强引用
正常引用,没有任何引用指向的对象被垃圾回收了。

软引用 内部内存不够使了,就被垃圾回收了。经常用作缓存。
弱引用 只要有弱引用指向对象,就会被垃圾回收。
ThreadLocal线程本地变量

虚引用--由JVM创建 ,用于管理堆外内存。zerocopy,NIO与其相关。

描述:当有一些java里的对象,关联着不归JVM管理的内存,当需要回收此类对象,
同时也要回收关联的内存(堆外内存)。在对象上加虚引用,虚引用一旦被回收,就会
把信息写在Queue里,所以有个线程监控队列,一旦有信息就说明有个和堆外内存相关联
的对象被回收了,就特殊处理把堆外内存干掉~~~~

浙公网安备 33010602011771号