Подводные камни Thread Local Storage
От: Nuzik Россия  
Дата: 15.09.10 13:40
Оценка:
Добрый день!

Пусть имеется файл A.c, в котором реализована некоторая функция A(...). Код был написан в начале 90х годов и использует большое количество глобальных переменных уровня модуля A.c (static blabla tralala).

Теперь возникла необходимость использовать функцию A(...) из нескольких потоков. Я поместил все глобальные переменные в Thread Local Storage (модификатор __declspec(thread) в VC++).

Вопрос: какие подводные камни несет в себе TLS? Будет ли заметка какая-либо существенная деградация производительности в сравнении с вариантом, когда я рефакторю код так, чтобы глобальные переменные не использовались?

Спасибо!
thread local storage
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.