Какая типичная ошибка при работе с synchronized и как ее избежать?
Что хотят услышать интервьюеры:
Ошибка: синхронизироваться на публичном объекте или String literal.
Ответ:
Как избежать: вернитесь к контракту и назначению темы: synchronized защищает critical section монитором объекта. Проверьте edge cases: null, конкурентный доступ, транзакции, ошибки, объем данных и lifecycle Spring/JVM.
Хороший кандидат: объясняет симптом, причину и безопасное исправление, а не просто вспоминает термин.
synchronized (lock) { counter++; }