摘要: 上一节你了解了什么是CAS、synchronized形成的锁的类型、重量级锁是用户态进程向内核态申请资源加锁过程,HotSpot Java对象结构,以及初步从3个层面分析了下synchronized的核心流程。还记得核心流程图么? 如下所示: 这一节我们仔细来分析下这个过程中,每一步的底层原理。我们 阅读全文
posted @ 2021-10-22 20:48 _繁茂 阅读(204) 评论(0) 推荐(0) 编辑
摘要: 前几节你应该已经了解和掌握了Thread、ThreadLocal、Volatile这几个并发基础知识的底层原理。这一节,你可以跟我一起深入了解下synchronized关键字的底层原理和其涉及的基础知识。看完这篇成长记,你可以获取到如下几点: synchronized预备知识: 理解什么是CAS? 阅读全文
posted @ 2021-10-22 18:15 _繁茂 阅读(237) 评论(0) 推荐(0) 编辑
摘要: 上一节我们基本了解Volatile的作用,从JMM层面简单分析了下volatile可见性的实现要求。发现JMM设定了一些操作要求,在这些要求下,可以保证线程间的可见性。可是具体实现是怎么实现的呢? 但是你要想理解这个实现是比较难的,之前提到按照三个层面给大家讲解。如下图所示: 其实上一节通过JMM分 阅读全文
posted @ 2021-10-22 15:44 _繁茂 阅读(176) 评论(0) 推荐(0) 编辑