ThreadLocal为什么会导致内存泄漏?首先给出结论:在ThreadLocal引起的内存泄漏问题中,真正导致内存泄漏的是value,而不是key(ThreadLocal对象本身)要搞明白一件事情,在Java中一个对象在什么情况下不会被GC掉?根据可达性分析法,如果一个对象存在一个GCRoot对它的引用链, 它就可以保证不被GC回收。ThreadLocal的本质是每个线程维护一个ThreadLocalMap,并且ThreadLocalMap的每一个Entry都是以这个ThreadLocal对象作为Key(ThreadLocalMap上对这个ThreadLocal对象的引用是弱引用),但是这个...