Встречается на собеседованиях • сегодня
Какие знаешь примитивы в библиотеке java.util.concurrent
В Java java.util.concurrent предоставляет несколько примитивов для синхронизации:
- Semaphore – ограничивает количество потоков, которые могут получить доступ к ресурсу.
java
Semaphore semaphore = new Semaphore(3); // максимум 3 потока semaphore.acquire(); // захват semaphore.release(); // освобождение
-
CountDownLatch – позволяет потокам ждать, пока счетчик не достигнет нуля.
javaCountDownLatch latch = new CountDownLatch(3); latch.countDown(); // уменьшает счетчик latch.await(); // блокирует, пока счетчик != 0 -
CyclicBarrier – синхронизирует группу потоков в определенной точке.
javaCyclicBarrier barrier = new CyclicBarrier(3); barrier.await(); // блокирует, пока все 3 потока не вызовут await() -
Phaser – гибкий аналог
CyclicBarrierс динамическим числом участников. -
Exchanger – обмен данными между двумя потоками в точке встречи.
Эти примитивы помогают управлять многопоточностью без низкоуровневых блокировок (synchronized).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы