У меня есть нормальный класс, предназначенный для доступа к одному потоку, и я хочу сделать его thread-safe
, чтобы многие потоки могли использовать один экземпляр одновременно.Есть некоторые методы и переменные уровня класса, которые я сделаю статическими, и используя locks
, сделаю их thread-safe
.Также методы, которые только используют локальные переменные, по умолчанию безопасны (каждый поток имеет свой стек).
Мой вопрос о properties
старого класса или, в более общем случае, о любой переменной non-static
,Могу ли я просто использовать ThreadLocal<T>
, и каждый поток имеет свой собственный набор properties
?Конечно, я буду использовать locks
и другие thread-safety
проблемы внутри setters
(я полагаю, getters
безопасны).
И ThreadLocal<T>
убийца производительности?