title: c++ volatile multithreading variables
body: <p>I'm writing a C++ app.</p>
  
  <p>I have a class variable that more than one thread is writing to.</p>
  
  <p>In C++, anything that can be modified without the compiler "realizing" that it's being changed needs to be marked volatile right? So if my code is multi threaded, and one thread may write to a var while another reads from it, do I need to mark the var volaltile?</p>
  
  <p>[I don't have a race condition since I'm relying on writes to ints being atomic]</p>
  
  <p>Thanks!</p>