Я работаю над приложением, где ожидается, что огромное количество потоков будет перебирать множество строковых значений и попытаться сопоставить его с данными, доступными в списке.
Я ищу следующий прецедент:
- Вектор инициализируется несколькими элементами типа std::string. (Предположим, что имя объекта - strList). strList будет инициализирован во время запуска приложения.
- Все потоки будут перебирать по strList, чтобы увидеть, соответствует ли значение значению по крайней мере одному элементу strList.
- Ни один нить никогда не попытается изменить strList, и он будет строго использоваться как объект readonly.
Так что, пожалуйста, скажите, если параллельные чтения являются потокобезопасными для векторного объекта. Я использую RHEL 6, а версия gcc - 4.5.x