ThreadLocal(未完全理解)

丶灬走出姿态 提交于 2020-08-16 11:01:56

1.是什么?
ThreadLocal是一个工具类,它为每个线程提供一个单独的变量副本存放这个线程的私有变量,其他线程不能改变其值。

2.内部结构、原理
每个线程有一个ThreadlocalMap,里面存放Entry键值对,key是ThreadLocal(??),value是变量副本。

3.内存泄漏:
key时弱引用,value是强引用,如果key被回收了而value没,就会存在key==null的Entry,无法回收value,可能会造成内存泄漏。
解决办法是:使用ThreadLocal方法后,最好手动调用remove方法。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!