每个线程都有一个ThreadLocalMap对象,ThreadLocalMap是Thread的一个内部类,可以把ThreadLocalMap理解成一个Map,这个Map里存放这一个Thread的所有线程变量. 在我们创建一个线程变量 maxLife 之后,执行其set方法,其实是以maxLife这个对象为键,以0为值,然后将这组键值对放入当前线程的ThreadLocalMap对象中. 如果你不明白这意味着什么,接着往下看. 为了说明ThreadLocal有什么不同,我们直接上代码. 首先,我们在…