用法:为每个线程提供独立的局部变量副本,以实现数据隔离,常用于数据库连接和Session管理。常用方法set,get和remove
实现原理:每个线程都有一个内置的ThreadLocalMap,键为ThreadLocal对象,值为线程的变量副本。
内存泄露:ThreadLocalMap的键为ThreadLocal对象的弱引用,但他的值是强引用。当ThreadLocal对象被回收后,key也被回收变为null,但值由于Entry中强引用的存在而无法回收,造成内存泄露。
这道题你会答吗?花几分钟告诉大家答案吧!
扫描二维码,关注牛客网
下载牛客APP,随时随地刷题