最近,整理一下学习c++的文章,看到一篇文章,其中提到了thread_local和std::future,觉得这两东西很有趣,于是网上搜了一些资料,觉得很有帮助,希望可以对大家学习c++线程有所帮助。
http://www.cnblogs.com/haippy/p/3236136.html。这个是线程的基础,说明了std::thread类的运用。
http://www.cnblogs.com/haippy/p/3237213.html。这个也是线程的基础,说明了std:mutex类的运用。
http://www.cnblogs.com/haippy/p/3239248.html。这个是线程同步运用到的相关类和函数,说明std::future和相关类的运用。
另thread_local下面有个例子:
thread_local int j = 0;
void foo()
{
m.lock();
j++; // j is now 1, no matter the thread. j is local to this thread.
m.unlock();
}
void func()
{
j = 0;
std::thread t1(foo);
std::thread t2(foo);
t1.join();
t2.join();
// j still 0. The other "j"s were local to the threads
}