ThreadLocal的具體實(shí)現(xiàn)
ThreadLocalMap
ThreadLocalMap是ThreadLocal類的一個(gè)靜態(tài)內(nèi)部類氧急,它實(shí)現(xiàn)了鍵值對(duì)的設(shè)置和獲日汀(對(duì)比Map對(duì)象來(lái)理解),每個(gè)線程中都有一個(gè)獨(dú)立的ThreadLocalMap副本,它所存儲(chǔ)的值,只能被當(dāng)前線程讀取和修改物遇。ThreadLocal類通過(guò)操作每一個(gè)線程特有的ThreadLocalMap副本,從而實(shí)現(xiàn)了變量訪問(wèn)在不同線程中的隔離。
ThreadLocalMap存儲(chǔ)的鍵值對(duì)中的鍵是this對(duì)象指向的ThreadLocal對(duì)象询兴,而值就是你所設(shè)置的對(duì)象了乃沙。
Thread里有
ThreadLocal.ThreadLocalMap threadLocals = null;這個(gè)成員變量