什么是 ThreadLocal 变量?

Posted programb

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是 ThreadLocal 变量?相关的知识,希望对你有一定的参考价值。

ThreadLocal 是 Java 里一种特殊的变量。每个线程都有一个 ThreadLocal 就是每

个线程都拥有了自己独立的一个变量,竞争条件被彻底消除了。它是为创建代价

高昂的对象获取线程安全的好方法,比如你可以用 ThreadLocal 让

SimpleDateFormat 变成线程安全的,因为那个类创建代价高昂且每次调用都需

要创建不同的实例所以不值得在局部范围使用它,如果为每个线程提供一个自己

独有的变量拷贝,将大大提高效率。首先,通过复用减少了代价高昂的对象的创

建个数。其次,你在没有使用高代价的同步或者不变性的情况下获得了线程安全。

以上是关于什么是 ThreadLocal 变量?的主要内容,如果未能解决你的问题,请参考以下文章

ThreadLocal 的目的? [复制]

ThreadLocal为什么不使用Thread-value实现

理解Java ThreadLocal

ThreadLocal介绍

ThreadLocal 是什么?有什么用?

ThreadLocal 是什么?有什么用?