ThreadLocal总结

一:ThreadLocal的本质

        ThreadLocal的本质相当于一个赋值的工具,向Thread的ThreadLocalMap存放值,其本身定义一套规范,其结构如下图所示:

原图出处:https://www.jianshu.com/p/98b68c97df9b

二:ThreadLocal的特性

        1:初始大小16

        2:采用线性探测法解决hash冲突

        3:ThreadLocal是弱引用。当没有外部对象强引用之时,发生GC就会被回收,但是Value不会被回收,如果创建ThreadLocal的线程一直运行,那么Entry里边的value有可能一致得不到回收,发生内存泄漏。


        

你可能感兴趣的:(ThreadLocal总结)