ThreadLocal

 
 
ThreadLocal对象通常当做静态域存储
当使用ThreadLocal维护变量时,ThreadLocal为每个使用该变量的线程提供独立的变量副本,所以每一个线程都可以独立地改变自己的副本,而不会影响其它线程所对应的副本。
 
 ThreadLocal是如何做到为每一个线程维护变量的副本的呢?其实实现的思路很简单:在ThreadLocal类中有一个Map,用于存储每一个线程的变量副本,Map中元素的键为线程对象,而值对应线程的变量副本。
 
ThreadLocal基本的实现原理(在线程对象里面有一个inner static class)。
 
 
原文地址:https://www.cnblogs.com/wanglao/p/5329674.html