Synchronized关键字的深入分析-二、Synchronized基本概念

2.1 定义和作用

synchronized关键字可以用来修饰方法或者代码块。在方法或代码块被执行时,它能够保证同一时刻只有一个线程执行该段代码。这一特性使得synchronized成为实现临界区(Critical Section)和避免竞态条件(Race Condition)的简便方法。

2.2 使用方法

  • 同步实例方法:锁定当前实例对象
public synchronized void method() {
    // 同步代码
}

  • 同步静态方法:锁定当前类的Class对象。
public static synchronized void staticMethod() {
    // 同步代码
}

  • 同步代码块:指定一个特定对象作为锁。
public void method() {
    synchronized(this) {
        // 同步代码
    }
}

2.3 对比其他关键字

volatilefinal相比,synchronized不仅能保证可见性和顺序性,还能保证原子性。volatile仅保证变量的修改可见性和禁止指令重排序,而final关键字则用于声明常量。

上一篇:STM32、GD32等驱动AMG8833热成像传感器源码分享-一、AMG8833介绍


下一篇:华为 obs相关