ThreadLocal과 ThreadLocalMap
ThreadLocal은 어떻게 Thread마다 자신의 값을 관리할까?각 Thread 안에는 static한 ThreadLocalMap이라는 구조체를 가지고 있고 ThreadLocal에서 get()을 호출할 경우 ThreadLocalMap에서 ThreadLocal의 객체를 키로 하여 자신의 스레드의 ThreadLocal을 찾는다.ThreadLocal의 get()은 다음과 같다.public T get() { return get(Thread.currentThread());}private T get(Thread t) { ThreadLocalMap map = getMap(t); if (map != null) { ThreadLocalMap.Entry e = map.getEntry(this)..
2024.11.17