http://www.infoq.com/cn/articles/java-se-16-synchronized
读后解读Synchronized下的三种锁
偏向锁轻量锁
重量锁
共享场景骑单车007号车
# 获取偏向锁
1、 张飞要骑
有人吗
没人
写上张飞的名字
成功获取偏向锁
骑走
# 成功偏向锁
1.1、张飞要骑车
有我的名字
骑走
#争抢进入轻量级锁
2、 刘备要骑
看到张飞的名字在,问张飞在吗
在
尝试写上刘备的名字失败
张飞我在等你
刘备骑完后把他的名字抹去进入轻量级锁
2.1、 尝试写上刘备名字成功
获取偏向锁
骑走
#争抢轻量级锁
3、 诸葛亮要骑
拍照单车挂身上
尝试单车上连到照片上
成功
成功获取轻量级锁
骑走
还车成功
#已经争抢成了重量级锁
3.1、 还车失败,好了好了你们快抢(关羽)
#争抢轻量级锁
4、关羽要骑车
拍照单车
尝试单车上连到照片上
失败
再试多次(自旋锁)
艹有完没完了,设置重量级锁
蹲等
诸葛亮说骑完了,抢