Sobes.tech
Назад к вопросам
Junior — Middle
60

Какие средства или классы из стандартных библиотек вы применяли для реализации синхронизации потоков?

Компании, где спрашивали
СБЕРСБЕР

Ответ от нейросети

sobes.tech AI

В Java для синхронизации потоков часто используются следующие средства из стандартной библиотеки:

  • Ключевое слово synchronized — блокирует доступ к коду или объекту, обеспечивая эксклюзивный доступ.

  • Классы из пакета java.util.concurrent:

    • ReentrantLock — более гибкая альтернатива synchronized с возможностью попытки захвата блокировки и таймаутом.
    • CountDownLatch, CyclicBarrier — для координации нескольких потоков.
    • Semaphore — для ограничения количества потоков, одновременно выполняющих определённый участок кода.

Пример использования synchronized:

public class Counter {
    private int count = 0;

    public synchronized void increment() {
        count++;
    }

    public synchronized int getCount() {
        return count;
    }
}