title: Is static init thread-safe with VC2010?
body: <p>I've been looking all around SO and MSDN for an answer to this question, but cannot seem to find a clear and final answer...</p>
  
  <p>I know that it's in the C++11 standard and that current GCC version behave this way, but does VC2010 currently guarantees thread-safety of a local static variable initialization?</p>
  
  <p>i.e.: Is this thread-safe with VC2010?</p>
  
  <pre><code>    static S&amp; getInstance()
      {
          static S instance;
          return instance;
      }
  </code></pre>
  
  <p>...And if not, what is the current best practice to get a thread-safe singleton implementation in C++ with VC2010?</p>
  
  <p><strong>EDIT: As pointed out by Chris Betti's answer, VC2010 doesn't implement thread-safeness of local static variable init.</strong></p>