最佳答案
我有一个多线程应用程序,必须经常读取一些数据,有时这些数据是更新。现在互斥锁保证了对数据的安全访问,但是代价很高,因为我希望多个线程能够同时读取,并且只在需要更新时才锁定它们(更新线程可以等待其他线程完成)。
我认为这是 boost::shared_mutex
应该做的,但我不清楚如何使用它,也没有找到一个明确的例子。
有人能举个简单的例子让我开始吗?