答案:因为无论使用HashMap
或者ConcurrentHashMap
,在底层上都会造成多个线程在一个对象上进行竞争的情况,并没有真正意义上满足一个线程持有一个变量的本地副本这种设计思想,ThreadLocal
在实现上,是让每个线程在自己的内部单独持有一个变量,这样的话,线程之间就不会有竞争出现了。
转载自知乎:https://www.zhihu.com/pin/1224700771654172672
【每日一题】ThreadLocal为何不用HashMap或者ConcurrentHashMap来实现
最新推荐文章于 2022-08-31 14:50:00 发布