求助>ThreadLocal内存泄漏的问题>
2回复

ThreadLocal内存泄漏的问题



最近看了些ThreadLocal内存泄漏的文章,发现ThreadLocal内存泄漏的原因是因为他里面有个ThreadLocalMap中的Entry的Key 是使用WeakReference进行的弱引用,可能会导致GC回收。

那么问题来了,一般我们定义 ThreadLocal 不都是static final 的成员变量进行强引用吗? 那么这个ThreadLocal 永远都不会被GC 回收了,那么是不是不会导致内存泄漏?

635 阅读
请先登录,再评论

回复列表

不是ThreadLocal 强不强引用的问题,还是entry key导致的内存泄漏,value回收不了。

最佳实践就是:在使用完后,显示的调用ThreadLocal的remove方法