ThreadLocal 是 Java 里一种特殊的变量。每个线程都有一个 ThreadLocal 就是每个线程都拥有了自己独立的一个变量,竞争条件被彻底消除了。它是为创建代价高昂的对象获取线程安全的好方法,比如你可以用 ThreadLocal 让SimpleDateFormat 变成线程安全的,因为那个类创建代价高昂且每次调用都需要创建不同的实例所以不值得在局部范围使用它,如果为每个线程提供一个自己独有的变量拷贝,将大大提高效率。首先,通过复用减少了代价高昂的对象的创建个数。其次,你在没有使用高代价的同步或者不变性的情况下获得了线程安全。
什么是 ThreadLocal 变量?
转载
Java Program!
本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
什么是ThreadLocal?
什么是ThreadLocal?顾名思义它是local variable(线程局部变量)。它的功用非常简单,就是为
session 数据库 object null hashmap -
ThreadLocal变量
早在 JDK 1.2 的版本中就提供 java.lang.ThreadLocal,为解决多线程程序的并发问题提供了一种e 更容...
ThreadLocal 局部变量 多线程 序列号 -
线程本地变量ThreadLocal
首先说明ThreadLocal存放的值是线程内共享的,线程间互斥的,主要用于线程
threadlocal 多线程 线程共享 connection 线程池 -
线程局部变量 - ThreadLocal
做事务处理的时候会有一个问题,就是两个不同的模块,都需要同一个connection(为了统一的事务处理,回滚或者提交),然后又不能在参数中
ThreadLocal java System 局部变量 -
ThreadLocal:线程专属的变量
ThreadLocal:线程专属的变量
System 链路 对象存储