是的,synchronized
關鍵字在Java中用于多線程同步。它可以確保在同一時刻只有一個線程可以訪問共享資源或代碼塊,從而防止數據不一致和并發問題。
synchronized
可以用在方法和代碼塊上。當用在方法上時,整個方法將被視為同步代碼塊。當用在代碼塊上時,需要指定一個對象作為鎖。
以下是一些使用synchronized
關鍵字的示例:
public class SynchronizedMethodExample {
public synchronized void synchronizedMethod() {
// 同步代碼
}
}
public class SynchronizedBlockExample {
private final Object lock = new Object();
public void synchronizedBlockMethod() {
synchronized (lock) {
// 同步代碼
}
}
}
在這兩個示例中,synchronized
關鍵字確保在同一時刻只有一個線程可以執行同步代碼。這有助于保護共享資源免受多線程環境中的并發訪問問題。