ThreadLocal은 각 쓰레드 마다 객체를 저장할 때 주로 쓰인다.

ThreadLocal의 변수들

생각 보다 별로 없다.

ThreadLocal 인스턴스 마다 생성되며, Thread의 저장될 HashCode이다. 이 값을 활용하여 쓰레드의 저장된 값을 키값으로 객체를 가져온다.

hashCode를 만들 떄 사용된다.

HashCode를 만들 때 사용되는 값이다. (따로 정리할 예정)

생성자

말할 것도 없다. 생성자는 이거 하나 밖에 없다.

ThreadLocal에 저장된 객체 가져오기

Thread는 ThreadLocalMap을 필드로 가지고 있다.

현재 Thread의 ThreadLocalMap의 저장된 값이 있으면 가져오고 없으면 ThreadLocalMap을 생성하고 Null을 리턴한다.