ThreadLocal作用及用途(图文详解)

ThreadLocal作用及用途(图文详解)-mikechen

Java多线程访问同一个共享变量的时候容易出现并发问题,为了保证线程安全。

一般采用SynchronizedReentrantLock等锁来解决并发问题。

ThreadLocal作用及用途(图文详解)-mikechen

同样ThreadLocal的作用及通途:也可以解决并发问题,主要是做数据隔离。

如下图所示:

ThreadLocal作用及用途(图文详解)-mikechen

ThreadLocal提供了线程的本地变量,即当创建一个变量后每个线程对其进行访问的时候访问的是自己线程的变量。

ThreadLocal中填充的变量属于当前线程,该变量对其他线程而言是隔离的,也就是说该变量是当前线程独有的变量。

ThreadLocal通过这样数据隔离的方式,同样也可以解决Java并发的问题。

 

陈睿mikechen

10年+大厂架构经验,资深技术专家,就职于阿里巴巴、淘宝、百度等一线互联网大厂。

关注「mikechen」公众号,获取更多技术干货!

后台回复面试即可获取《史上最全阿里Java面试题总结》,后台回复架构,即可获取《阿里架构师进阶专题全部合集

评论交流
    说说你的看法