ThreadLocal 基本API
2021-01-03 03:27
标签:其他 oid 线程安全 构造函数 理解 roc val strong 初始 ThreadLocal 是什么呢? 定义:提供线程局部变量; 一个线程局部变量在多个线程中,分别有独立的值(副本)。 特点:简单(开箱即用)、快速(无额外开销)、安全(线程安全)。 场景: 多线程场景(资源持有、线程一致性、并发计算、线程安全等场景)。 ThreadLocal 基本API 构造函数ThreadLocal 初始化initialValue() 访问器get/set 回收 remove 结果: 1.initialValue只执行了一次,而且需要调用get()方法去触发。 下面的代码会让你更好的理解:一个线程局部变量在多个线程中,分别有独立的值(副本) 结果: 结果里面的 ThreadLocal 基本API 标签:其他 oid 线程安全 构造函数 理解 roc val strong 初始 原文地址:https://www.cnblogs.com/oldthree3/p/13211223.htmlpublic class ThreadLocalTest {
public static ThreadLocal
Initial Value run .........
main
good
Process finished with exit code 0
public class ThreadLocalTest {
public static ThreadLocal
Initial Value run .........
main
good
Initial Value run .........
Thread-0
Process finished with exit code 0
good 是代码 最后一行的输出。
在不同的线程里, 使用了get() 会触发 其initialValue方法。在另外的线程set值,不会影响其他线程。
故 一个线程局部变量在多个线程中,分别有独立的值(副本)