ThreadLocal原理及最佳实践
所属分类 java
浏览量 1159
ThreadLocal 使用场景
Web用户身份 Session
请求的链路跟踪 traceId
SimpleDateFormat 非线程安全
Thread ThreadLocalMap ThreadLocal
WeakReferences key
Hash冲突解决方法 开放定址法
ThreadLocal内存泄漏的根源
ThreadLocalMap的生命周期跟Thread一样长,如果没有手动删除对应key会导致内存泄漏
线程池中的线程
key 强引用 VS 弱引用
key 使用强引用
引用的ThreadLocal的对象被回收了,如果没有手动删除,ThreadLocal不会被回收,导致内存泄漏。
key 使用弱引用
引用的ThreadLocal的对象被回收了,即使没有手动删除,value在下一次ThreadLocalMap调用set,get,remove时被清除
最佳实践
使用完ThreadLocal后remove,避免内存泄露
实现 initialValue 方法 ,设置初始值
threadlocal实例及原理
ThreadLocal 与 SimpleDateFormat
上一篇
下一篇
kafka面试题
tcpdump使用简介
kafka各版本特性
分布式一致性算法 Paxos Raft ZAB
springcloud sleuth zipkin 实例
Spring Cloud Sleuth Zipkin原理