背景 JAVA中有全局变量(静态变量,不论在哪个函数 都能访问).局部变量(函数中定义的变量,在栈中,只能在本函数内访问),主要这2种类型. threadlocal变量 是一种线程级全局的变量(普通的全局变量是进程级全局),就是在一个线程中,任何函数能访问到这个threadlocal对象关联的对象,只要没有重新设置,都是同一个对象,变量作用域介于全局变量和局部变量之间, 在其他线程中访问这个threadlocal对象,访问不了当前线程设置的关联对象,也就是说一个线程如果没有对threadloca