ThreadLocal學習

    1. ThreadLocal字面理解?
        不是"本地線程",而是Thread的局部變量;
    2. ThreadLocal如何維護變量?
       爲每一個使用該變量的線程提供獨立的變量副本,每個線程均可以獨立地改變本身的副本,而不會影響其它線程所對應的副本。
    3. ThreadLocal是如何爲每個線程維護變量的副本?
       在ThreadLocal類中有一個Map(即ThreadLocalMap),用於存儲每個線程的變量副本,Map中元素的鍵爲線程對象,而值對應線程的變量副本。

    4. ThreadLocal方法學習 多線程


    5. ThreadLocal與同步機制(synchronized)區別:        相同點:都是爲了解決多線程中相同變量的訪問衝突問題。        不一樣點:        a.    同步機制中,經過對象的鎖機制保證同一時間只有一個線程訪問變量,即"以時間換空間";        b.    ThreadLocal會爲每個線程提供一個獨立的變量副本,從而隔離了多個線程對數據的訪問衝突,即"以空間換時間"
相關文章
相關標籤/搜索