在Java中,synchronized关键字用于控制多线程对共享资源的访问,以避免出现数据不一致的问题。synchronized方法可以确保在同一时刻只有一个线程能够执行该方法。使用synchronized方法的步骤如下:
下面是一些示例:
// 同步整个对象
public class SynchronizedExample {
public synchronized void synchronizedMethod() {
// 同步代码
}
}
// 同步代码块
public class SynchronizedBlockExample {
private final Object lock = new Object();
public void methodWithSynchronizedBlock() {
synchronized (lock) {
// 同步代码
}
}
}
需要注意的是,synchronized方法会导致性能下降,因为在多线程环境下,只有一个线程能够执行该方法。如果可能的话,可以考虑使用其他同步机制,如java.util.concurrent包中的工具类。