Назад к вопросам
Junior — Middle
55
Какая основная задача выполнения критических секций с помощью блока synchronized в Java?
Ответ от нейросети
sobes.tech AI
Блок synchronized в Java используется для обеспечения взаимного исключения при доступе к критическим секциям кода. Его основная задача — предотвратить одновременное выполнение этого кода несколькими потоками, чтобы избежать состояния гонки и обеспечить корректность данных.
Когда поток входит в synchronized-блок, он захватывает монитор (замок) объекта, и другие потоки, пытающиеся войти в этот блок с тем же монитором, будут ждать, пока первый поток не выйдет из блока.
Пример:
public void increment() {
synchronized(this) {
counter++;
}
}