Java ThreadLocal理解
ThreadLocal 就是为了同一个变量可以被不同的线程所访问,且每一个线程之间的变量改变不对其他的线程变量产生影响
代码块如下
package mobai.others;
/**
* ThreadLocalTest : 分析上下文 环境
* 1、构造器:哪里调用就属于哪里 找线程体
* 2、run方法:线程本身的
* @author MAIBENBEN
*
*/
public class ThreadLocalTest04 {
private static ThreadLocal<Integer> threadLocal = ThreadLocal.withInitial(()->1);
public static void main(String[] args) throws InterruptedException {
new Thread(new MyRun(),"thread_1").start();
new Thread(new MyRun(),"thread_2").start();
}
public static class MyRun implements Runnable{
public MyRun() {
threadLocal.set(-99);
System.out.println(Thread.currentThread().getName()+"-*->"+threadLocal.get());
}
public void run() {
System.out.println(Thread.currentThread().getName()+"剩余-->"+threadLocal.get());
}
}
}