java8 ThreadLocal真不会内存泄露了吗
看很多资料说Java8中ThreadLocal使用了虚引用以及set、get、remove会清理ThreadLocalMap中key为null的数据,这样就不会有内存泄露问题。真的是这样吗?如果是真的,key怎么为null的?怎么清理的?想找到答案,还是从源码入手。
一、set,直接定位到ThreadLocalMap.set
1):
Entry[] tab = table;
int len = tab.length;
int i = key.threadLocalHashCode & (len
原创
2020-11-05 09:31:23 ·
578 阅读 ·
1 评论