头条面试官手把手教学 ThreadLocal
SoWhat:麦叔,最近面别的公司没? 麦叔:上次面试失败桑心死我了,我沉淀了一礼拜面头条去了。 SoWhat:哎呦我去!麦叔你这头条都面上了,面了几轮,手写红黑树没? 麦叔:刚刚两轮,一面红黑树轻松搞定了!面我关于Java的JVM跟并发的时候我看你水的那个JVM系列还有并发系列都过了。最后还问了我点ThreadLocal的问题。 SoWhat:擦,ThreadLocal有啥好问的就是个底层Map啊!并且日常我写数据库事务跟Spring的时候也没见用啊!问那么偏门的干什么他们。 麦叔:擦。。。。你关于ThreadLocal知道的那么点啊?Spring的灵魂除了IOC跟AOP就是ThreadLocal了! SoWhat:真的么,麦叔你给我讲讲要不? 麦叔:好今天让你开开眼。 在这里插入图片描述 介绍 我们看下JDK文档的官方描述:ThreadLocal类用来提供线程内部等局部变量,这种变量在多线程环境下访问(get,set)时能保证各个线程的变量相对独立于其他线程内的变量,ThreadLocal实例通常来说都是private static类型,用于关联线程的上下文。 ThreadLoca...


线程2执行完毕后线程1接着从原来的暂停处开始执行下面的语句:
通过逐步分析跟绘图可以知道红色部分会有环产生。JDK中HashMap是不安全的,多线程情况下要用ConcurrentHashMap。