title: Is stl vector concurrent read thread-safe?
body: <p>I am working on a application where huge number of threads are expected to iterate over set of string values and try to match it's own data with the data available in the list.</p>
  
  <p>I am looking for following use case:</p>
  
  <ol>
  <li>Vector is initialized with few elements of type std::string. (Lets say object name is strList). strList will get initialized at the time of application startup.</li>
  <li>All threads will iterate over strList to see if it's value matches with atleast one element of strList.</li>
  <li>No thread will ever try to modify strList and it will be strictly used as readonly object.</li>
  </ol>
  
  <p>So could you please tell me if concurrent reads are thread-safe on vector object. I am using RHEL 6 and gcc version is 4.5.x</p>