Вопрос проверяет способность осознанно применять ThreadLocal, а не использовать его «по привычке».
Короткий ответ
ThreadLocal имеет смысл использовать, когда данные должны быть доступны в рамках одного потока.
При этом данные не должны передаваться между потоками.
Это позволяет избежать синхронизации.
Часто применяется для контекста выполнения.
Использовать его стоит осторожно.
Длинный ответ
Зарегистрироваться
Развернутый ответ доступен только зарегистрированным пользователям.