WeakReference 让GC需要时回收对象 对于那些创建便宜但耗费大量内存的对象,即希望保持该对象,又要在应用程序需要时使用,同时希望对象不再使用时,GC回收。 这就是ThreadLocalMap为啥使用WeakReference的原因。
我把a设置为null,为什么a没有被回收呢?是因为map还在引用,那怎样在a设为null的时候,让a被回收掉呢?
下面我们看看怎么使用WeakReference,gc后a对象就被回收了
WeakReference 让GC需要时回收对象 对于那些创建便宜但耗费大量内存的对象,即希望保持该对象,又要在应用程序需要时使用,同时希望对象不再使用时,GC回收。 这就是ThreadLocalMap为啥使用WeakReference的原因。
我把a设置为null,为什么a没有被回收呢?是因为map还在引用,那怎样在a设为null的时候,让a被回收掉呢?
下面我们看看怎么使用WeakReference,gc后a对象就被回收了
本文标题:对WeakReference的理解
本文链接:https://www.haomeiwen.com/subject/lcydfrtx.html
网友评论