🌈🌈🌈今天给大家分享的是Java中 synchronized 的基本原理
🛩️🛩️🛩️希望我的文章能对你有所帮助,有不足的地方还请各位看官多多指教,大家一起学习交流!
✈️✈️✈️动动你们发财的小手,点点关注点点赞!在此谢过啦!哈哈哈!😛😛😛
目录
一、synchronized 基本特点
结合上篇文章给大家分享的锁策略
,
我们就可以总结出
, Synchronized
具有以下特性
(
只考虑
JDK 1.8)。
- 开始时是乐观锁, 如果锁冲突频繁, 就转换为悲观锁
- 开始是轻量级锁实现, 如果锁被持有的时间较长, 就转换成重量级锁
- 实现轻量级锁的时候大概率用到的自旋锁策略
- 是一种不公平锁
- 是一种可重入锁
- 不是读写锁
二、加锁工作过程
JVM