Какая типичная ошибка при работе с Semaphore и как ее избежать?
Что хотят услышать интервьюеры:
Ошибка: использовать как бизнес-lock без fairness и timeout.
Ответ:
Как избежать: вернитесь к контракту и назначению темы: Semaphore ограничивает количество одновременных доступов к ресурсу. Проверьте edge cases: null, конкурентный доступ, транзакции, ошибки, объем данных и lifecycle Spring/JVM.
Хороший кандидат: объясняет симптом, причину и безопасное исправление, а не просто вспоминает термин.
Semaphore semaphore = new Semaphore(10);