C++中的锁和互斥锁

The*_* do 6 c++ mutex

我已经学习了一段时间的C++并且仍然没有遇到可以解释这些野兽是什么的好书?它们是不可或缺的C++功能吗?如果是这样,它们如何仅在诸如BS的C++编程语言这样的书中被提及如果没有,你在哪里可以获得关于它们的可靠信息 - 最好是一本书(不太喜欢网络教程),如何定义它们,如何使用它们等等.感谢您提供宝贵的帮助.

Gre*_*osz 9

Locks和Mutexes是并发结构,用于确保两个线程不会同时访问相同的共享数据,从而实现正确性.

当前的C++标准没有并发工具.

虽然你提到你更喜欢书籍和在线教程,但Herb Sutter的Effective Concurrency专栏绝对是必读的.

安东尼·威廉姆斯即将出版的书名为" C++ Concurrency in Action".Anthony Williams是Boost.Thread库的作者.

值得一看的另一个线程库是英特尔的TBB.

  • 线程设施现在也在C++ 11中.例如,参见[this reference](http://en.cppreference.com/w/cpp/thread) (2认同)

tlo*_*ach 5

锁和互斥锁不是当前C++标准的一部分,因为它们处理的并发性不是标准的一部分.它们包含在几个库中,各种操作系统有不同的处理方式(POSIX与Windows线程).如果你拿起一本关于C++并发编程的书,你可能会找到你想要的东西.您可以在boost和ACE库中找到它们的实现.

线程是C++ 0x标准的一部分.我还没有知道它的任何书籍,但维基百科在这里有一个新的线程功能的模糊.