title: What does the thread_local mean in C++11?
body: <p>I am confused with the description of <code>thread_local</code> in C++11. My understanding is, each thread has unique copy of local variables in a function. The global/static variables can be accessed by all the threads (possibly synchronized access using locks). And the <code>thread_local</code> variables are visible to all the threads but can only modified by the thread for which they are defined? Is it correct?  </p>