主要涉及到ThreadLocal中get和set方法,我们仔细看这个两个方法源码先从set方法上图
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIyVGduV2QvwVe0lmdhJ3ZvwFM38CXlZHbvN3cpR2Lc1TPB10QGtWUCpEMJ9CXsxWam9CXwADNvwVZ6l2c052bm9CXUJDT1wkNhVzLcRnbvZ2LcZXUYpVd1kmYr50MZV3YyI2cKJDT29GRjBjUIF2LcRHelR3LcJzLctmch1mclRXY39TN2czM0UTN0EzMyYDM2EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
其中threadLocalMap就是一个hash Map,但是这个map是针对于ThreadLocal的,我们直接看这个方法是如进行createMap<t,value>我们直接看源码
返回一个ThreadLocalMap,同时给
进行赋值,这样就存在一个当前thread的threadLocalMap。
我觉得源码这个threadLocal不是线程共享,而是存放每个线程东西,互不影响的
主要涉及到ThreadLocal中get和set方法,我们仔细看这个两个方法源码先从set方法上图
其中threadLocalMap就是一个hash Map,但是这个map是针对于ThreadLocal的,我们直接看这个方法是如进行createMap<t,value>我们直接看源码
返回一个ThreadLocalMap,同时给
进行赋值,这样就存在一个当前thread的threadLocalMap。
我觉得源码这个threadLocal不是线程共享,而是存放每个线程东西,互不影响的