Junior — Middle
Care este sarcina principală a executării secțiunilor critice folosind blocul synchronized în Java?
sobes.tech AI
Răspuns de la AI
Блок synchronized в Java используется для обеспечения взаимного исключения при доступе к критическим секциям кода. Его основная задача — предотвратить одновременное выполнение этого кода несколькими потоками, чтобы избежать состояния гонки и обеспечить корректность данных.
Когда поток входит в synchronized-блок, он захватывает монитор (замок) объекта, и другие потоки, пытающиеся войти в этот блок с тем же монитором, будут ждать, пока первый поток не выйдет из блока.
Пример:
public void increment() {
synchronized(this) {
counter++;
}
}