Re: multithreading : visibility control
От: saf_e  
Дата: 30.05.13 08:40
Оценка:
Здравствуйте, uzhas, Вы писали:

U>интересует вот какой сценарий: в одном потоке я заполняю некоторую структуру данных (пусть будет std::map), далее я запускаю несколько потоков, которые будут использовать заполненный объект в режиме readonly (пусть будут выполнять find) (предполагается использовать без мьютексов)

U>1) какие есть гарантии по поводу видимости всего объекта в других потоках? я должен быть уверен, что все потоки работают с одним и тем же словарем
U>2) какие есть средства в языке для управления видимостью ? я так понимаю, что барьеры выполняют эту функцию, только не ясно как оптимально их использовать. каждый раз при чтении использовать барьер может быть затратно

U>интересует как C++11, так и VS-specific


Если на момент обращения из других потоков map создан и заполнен, все ОК, больше ничего не надо.

Если используется создание по первому обращению, тут могут быть варианты.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.