本節(jié),我們來探討一個特殊的概念,線程本地變量,在Java中的實現(xiàn)是類ThreadLocal,它是什么?有什么用?實現(xiàn)原理是什么?讓我們接下來逐步探討。
基本概念和用法
線程本地變量是說,每個線程都有同一個變量的獨有拷貝,這個概念聽上去比較難以理解,我們先直接來看類TheadLocal的用法。
ThreadLocal是一個泛型類,接受一個類型參數(shù)T,它只有一個空的構(gòu)造方法,有兩個主要的public方法:
public T get()public void set(T value)
set就是設置值,get就是獲取值,如果沒有值,返回null,看上去,ThreadLocal就是一個單一對象的容器,比如:
public static void main(String[] args) { ThreadLocal<Integer> local = new ThreadLocal<>(); local.set(100); Syst