package test;
public class ThreadLocalTest {
public static void main(String[] args) {
ThreadLocal tl = new ThreadLocal();
Local l = new Local();
ThreadA ta = new ThreadA(tl);
ThreadA tb = new ThreadA(tl);
ta.setName("Thread--A");
tb.setName("Thread--B");
ta.start();
tb.start();
}
}
class Local {
T a ;
public void set(T a ){
this.a =a ;
}
public T get(){
return a ;
}
}
class ThreadA extends Thread{
ThreadLocal tl;
ThreadA(ThreadLocal tl){
this.tl = tl;
}
public void run() {
String x= null; this.getName();
for(int i = 1 ; i<10;i++) {
x= this.getName()+ " "+i;
tl.set(x);
System.out.println(this.getName()+"设置值:"+i);
/*try {
Thread.sleep(500);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}*/
System.out.println(this.getName()+"获取值:"+tl.get());
}
}
}