title: Sorting a vector using threads
body: <p>Are the vectors defined in the C++ STL re-entrant or thread safe?
  Can I use two threads and work(in this case sort) on two halfs of a vector without using a mutex?
  For example:</p>
  
  <pre><code>int size = (Data_List.size())/2;
  
  Thread A()
  {
  
  ................ // Do we need to lock Data_list with a mutex
   sort(Data_List.begin(),Data_List.begin()+size,cmp);
  }
  
  Thread B()
  {
  ....// Do we need to lock Data_list with a mutex
  sort(Data_List.begin()+(size+1),Data_List.end(),cmp);
  }
  </code></pre>
  
  <p>My Question is do we need to lock the access of Data_List using a mutex?</p>
  
  <p>Note: the cmp function is a regular int comparision function.</p>