标签:style blog http ar color sp 数据 div 2014
ThreadLocal: 维护线程局部的变量。
ThreadLocal 不是线程。它就是一个Map。可以保存对象。
它保存的对象,只与当前线程相关。
当一个线程还没有运行完成时,如果不想传递数据,可以通过ThreadLocal来保存与这个Thread相关数据。
Demo
1 public class TestThreadLocal { 2 public static ThreadLocal<Object> tl=new ThreadLocal<Object>(); 3 public static Object thread() 4 { 5 Object o=tl.get();//获取数据 6 if(o==null) 7 { 8 o=new Random().nextInt(100); 9 tl.set(o);//设置数据 10 } 11 return o; 12 } 13 }
1 public static void main(String[] args) { 2 Object o1=TestThreadLocal.thread(); 3 Object o2=TestThreadLocal.thread(); 4 System.out.println("o1:"+o1+" o2:"+o2);//mian调用 5 aa(); //main调用 6 new Thread() 7 { 8 public void run() { 9 Object o3=TestThreadLocal.thread(); 10 System.out.println("o3:"+o3);//线程调用 11 aa();//线程调用 12 } 13 }.start(); 14 } 15 16 private static void aa() 17 { 18 Object o4=TestThreadLocal.thread(); 19 System.out.println("o4:"+ o4); 20 } 21 }
标签:style blog http ar color sp 数据 div 2014
原文地址:http://www.cnblogs.com/liuwt365/p/4129337.html