Сравнение производительности ThreadLocal с использованием параметров

В настоящее время я реализую среду выполнения (т.е. набор функций) для языка формул. Некоторым формулам необходимо передать контекст, и я создал класс EvaluationContext, который содержит все свойства, к которым мне нужен доступ во время выполнения.

Использование ThreadLocal кажется хорошим вариантом, чтобы сделать этот контекст доступным для функций времени выполнения. Другой вариант - передать контекст в качестве параметра нужным функциям.

Я предпочитаю использовать ThreadLocal, но мне было интересно, есть ли какое-либо снижение производительности в отличие от передачи контекста оценки через параметры метода.

5
задан Sunil Garg 24 May 2018 в 05:51
поделиться