
谈到多线程就不得不谈到Synchronized,重要性不言而喻,今天主要分享Synchronized的底层实现。

标题Synchronized
synchronized关键字解决的是多个线程之间访问资源的同步性,synchronized 翻译为中文的意思是同步,也称之为”同步锁“。
synchronized的作用是保证在同一时刻, 被修饰的代码块或方法只会有一个线程执行,以达到保证并发安全的效果。
标题Synchronized的使用方式
主要有3种使用方式:

1.修饰实例方法:作用于当前实例加锁
public synchronized void method(){
// 代码
}
2.修饰静态方法:作用于当前类对象加锁
public static synchronized void method(){
// 代码
}
3.修饰代码块:指定加锁对象,对给定对象加锁

本文详细介绍了Java中synchronized的使用方式及其底层实现原理,包括锁对象存储在Java对象头的标记字段、Monitor对象监视器的工作机制,以及锁状态的升级过程,如无锁、偏向锁、轻量级锁和重量级锁。通过本文,读者可以全面了解synchronized在并发编程中的重要性和优化策略。
最低0.47元/天 解锁文章
4209

被折叠的 条评论
为什么被折叠?



