Junior — Middle
È possibile usare il modificatore synchronized per un metodo statico in Java?
sobes.tech AI
Risposta dell'AI
Да, в Java можно использовать модификатор synchronized для статического метода. В этом случае блокировка происходит на уровне класса (объекта Class), а не на уровне экземпляра.
Это значит, что если один поток выполняет статический синхронизированный метод, другие потоки, пытающиеся вызвать любой другой статический синхронизированный метод этого же класса, будут заблокированы до освобождения блокировки.
Пример:
public class Example {
public static synchronized void staticMethod() {
// код, синхронизированный на объекте Example.class
}
}
Таким образом, synchronized для статических методов обеспечивает потокобезопасность на уровне класса.