ThreadLocal的设计理念与作用
Posted feicheninfo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ThreadLocal的设计理念与作用相关的知识,希望对你有一定的参考价值。
Java中的ThreadLocal类允许我们创建只能被同一个线程读写的变量。因此,如果一段代码含有一个ThreadLocal变量的引用,即使两个线程同时执行这段代码,它们也无法访问到对方的ThreadLocal变量。
private
ThreadLocal myThreadLocal =
new
ThreadLocal();
myThreadLocal.set("A thread local value”);
String threadLocalValue = (String) myThreadLocal.get();
/////////////////////////////////////
private
ThreadLocal myThreadLocal =
new
ThreadLocal<String>();
String threadLocalValue = myThreadLocal.get();
/////////////////////////////////////
overeide initialValue方法可以设置初始化值。
InheritableThreadLocal类是ThreadLocal类的子类。ThreadLocal中每个线程拥有它自己的值,与ThreadLocal不同的是,InheritableThreadLocal允许一个线程以及该线程创建的所有子线程都可以访问它保存的值。
以上是关于ThreadLocal的设计理念与作用的主要内容,如果未能解决你的问题,请参考以下文章
分析Threadlocal内部实现原理,并解决Threadlocal的ThreadLocalMap的hash冲突与内存泄露