thread_utils::ThreadLocalHolder< T > Node1 thread_utils::ThreadLocal Holder< T > # m_threadMap + get() + set() + getMap() Node2 thread_utils::ThreadLocal Owner< T > + ~ThreadLocalOwner() Node1->Node2