ThreadLocal到底是个啥?

首先,我们站在人类认知事物的角度,ThreadLocal,可以拆成Thread+Local。Thread—线程;local—本地的,局域的。拼在一起就是线程局域的。线程私有的。 OK,如果你想到了这一点,其实你已经知道了ThreadLocal的最大特点——线程私有。这种理解是对的,ThreadLocal类顾名思义可以理解为线程本地变量。也就是说如果定义了一个ThreadLocal,每个线程往这个ThreadLocal中读写是线程隔离,互相之间不会影响的。它提供了一种将可变数据通过每个线程有自己的独立副本从而实现线程封闭的机制。