此类提供线程局部变量。这些变量与普通变量的不同之处在于,每个访问一个变量的线程(通过其get或set方法)都有自己的、独立初始化的变量副本。ThreadLocal 实例通常是类中的私有静态字段,这些字段希望将状态与线程(例如,用户ID或事务ID)相关联。说白了,ThreadLocal 就是用来存放线程自身相关数据的一个容器,这个容器叫做ThreadLocalMap,它是 Thread 类的一个成员变量,它本身也是一个哈希表,key 是 ThreadLocal 本身,value 是存入的变量。也就是说,变量是存在当前线程的一个ThreadLocalMap中,每个线程在取这个变量的时候,就是取线程自己的本地变量,自然是线程安全的了,所以说 ThreadLocal 提供线程局部变量,或者叫本地变量。
欢迎光临 IT评测·应用市场-qidao123.com (https://dis.qidao123.com/) | Powered by Discuz! X3.4 |