ThreadLocal要点记录
- 每个线程内都会维护一个ThreadLocalMap
- 线程使用ThreadLocal变量时自然每个线程都会有一个ThreadLocal变量的指引,一般ThreadLocal都会定义成static,所以每个线程指向的是同一个ThreadLocal.ThreadLocal也是1中ThreadLocalMap的key值.
- 当线程调用ThreadLocal的set方法时,首先会在当前线程中查到ThreadLocalMap,并设置key为ThreadLocal的value.
- 查询是也是首先会在当前线程中查到ThreadLocalMap,并查询key为ThreadLocal的value.所以因为每个线程自己维护自己ThreadLocal的value,所以达到了线程隔离的效果.
本文深入解析了ThreadLocal的工作原理及其实现方式。每个线程都维护了一个ThreadLocalMap,通过ThreadLocal作为键来存储和获取特定于线程的数据,从而实现了线程之间的隔离。
994

被折叠的 条评论
为什么被折叠?



