ThreadLocal,就是Thread local variable 线程局部变量的意思,就是为每一个使用该变量的线程提供一个变量副本,每个线程里的该变量互不影响,ThreadLocal从另外一方面也解决了多线程全局变量同步的问题,当然你也可以用synchronized关键字或者显式的锁去同步。
下面是threadLocal的用法
如代码所示,初始化2个线程并定义线程的名称,线程任务中i=6时将线程名称set给threadlocal定义的变量。
运行结果如下:
说明每个threadlocal定义的变量name只在当前线程中有效