2020-11-02:ThreadLocal为何不用HashMap或者ConcurrentHashMap来实现?
前言
每日一题专栏
ThreadLocal为何不用HashMap或者ConcurrentHashMap来实现?
因为无论使用HashMap或者ConcurrentHashMap,在底层上都会造成多个线程在一个对象上进行竞争的情况,并没有真正意义上满足一个线程持有一个变量的本地副本这种设计思想,ThreadLocal在实现上,是让每个线程在自己的内部单独持有一个变量,这样的话,线程之间就不会有竞争出现了。