一:ThreadLocal的本质
ThreadLocal的本质相当于一个赋值的工具,向Thread的ThreadLocalMap存放值,其本身定义一套规范,其结构如下图所示:
原图出处:https://www.jianshu.com/p/98b68c97df9b
二:ThreadLocal的特性
1:初始大小16
2:采用线性探测法解决hash冲突
3:ThreadLocal是弱引用。当没有外部对象强引用之时,发生GC就会被回收,但是Value不会被回收,如果创建ThreadLocal的线程一直运行,那么Entry里边的value有可能一致得不到回收,发生内存泄漏。