Какие знаешь механизмы реализации Concurrency? Semaphore, CountDownLatch — что такое, зачем нужны, какие бывают?

Зачем нужны:

Используются для координации потоков и синхронизации их доступа к общим ресурсам.

Механизмы реализации Concurrency:

  1. Semaphore:
    • Механизм управления доступом к ограниченным ресурсам.
    • Поддерживает счетчик доступных разрешений (ресурсов), и потоки должны получить разрешение перед доступом.
    • Бывают: бинарный (1 ресурс) и счетный (несколько ресурсов).
  2. CountDownLatch:
    • Ожидание завершения заданного количества операций перед продолжением.
    • Потоки уменьшают счетчик, и как только он достигает нуля, ожидающий поток продолжает работу.

Опубликовано

в

от

Метки: