threadlocal为什么弱引用
时间: 2023-10-21 14:30:15 浏览: 71
浅谈Java引用和Threadlocal的那些事
ThreadLocal是弱引用是因为它的设计初衷是为了解决线程安全问题,而不是为了存储大量数据。因此,如果ThreadLocal引用的对象没有被其他强引用持有,那么这个对象就会被垃圾回收掉,而不会造成内存泄漏。如果ThreadLocal使用的是强引用,那么当ThreadLocal被回收时,它引用的对象也会被回收,这就会造成意外的数据丢失。因此,ThreadLocal使用弱引用是为了保证线程安全的同时,也避免了内存泄漏的问题。
阅读全文