ThreadLocal总结

一:ThreadLocal的本质

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

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

二:ThreadLocal的特性

        1:初始大小16

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

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


        

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • ThreadLocal是java.lang包里的一个优秀的多线程工具。ThreadLocal为变量在每个线程中都创...
    长特高阅读 2,325评论 1 1
  • 一 、概述 定义官方定义: This class provides thread-local variables....
    撒法第阅读 1,391评论 0 0
  • 原创文章&经验总结&从校招到A厂一路阳光一路沧桑 详情请戳www.codercc.com 1. ThreadLoc...
    你听___阅读 11,708评论 8 19
  • 一、简介 并发编程中,当访问共享数据时,通常需要使用同步技术。但如果数据不发布(逸出)到线程以外,仅仅在单线程中被...
    邱simple阅读 8,730评论 3 12
  • 题记:每个人都有人生的低谷,选择沉沦堕落,还是东山再起?完全取决于自我的调节。 候鸟的迁徙 从清晨到傍晚 主动或是...
    嵗月静好阅读 1,345评论 0 2