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

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

Короткий ответ

Что ответить на собеседовании

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

Подробный разбор

Ответ с пояснениями

В 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;
    }
}

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее