Назад к вопросам
Junior — Middle
66
При каких случаях следует применять статический метод с синхронизацией в Java?
Ответ от нейросети
sobes.tech AI
Статический метод с синхронизацией в Java следует применять, когда нужно обеспечить потокобезопасный доступ к общим ресурсам, связанным с классом, а не с конкретным экземпляром. Например, если метод изменяет или читает статические переменные, которые могут использоваться несколькими потоками одновременно, синхронизация предотвратит состояние гонки.
Синхронизация статического метода блокирует монитор класса (Class object), а не конкретного объекта, поэтому все вызовы этого метода из разных потоков будут выполняться по очереди.
Пример:
public class Counter {
private static int count = 0;
public static synchronized void increment() {
count++;
}
public static synchronized int getCount() {
return count;
}
}
Здесь синхронизация нужна, чтобы избежать одновременного изменения переменной count несколькими потоками.