您的位置:首页 > 其它

ThreadLocal浅析

2015-10-27 17:37 316 查看
  早在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序。

  当使用ThreadLocal维护变量时,ThreadLocal为每个使用该变量的线程提供独立的变量副本,所以每一个线程都可以独立地改变自己的副本,而不会影响其它线程所对应的副本。

  从线程的角度看,目标变量就象是线程的本地变量,这也是类名中“Local”所要表达的意思。
通过示例来熟悉使用ThreadLocal。

public class Test004 {

static final ThreadLocal<String> sThreadLocal0 = new ThreadLocal<>();
static final ThreadLocal<String> sThreadLocal1 = new ThreadLocal<>();
static final ThreadLocal<Integer> sThreadLocal2 = new ThreadLocal<>();
public static void main(String args[]){

sThreadLocal0.set("得分");
sThreadLocal0.set("小王得分是");
sThreadLocal1.set(":");
sThreadLocal2.set(100);

System.out.println(sThreadLocal0.get() + sThreadLocal1.get() + sThreadLocal2.get());
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: