最简单的实现模式1编写器 - 具有boost库的多个读者

时间:2009-08-28 20:02:58

标签: c++ boost

我在std :: map中开发了一个具有多个线程和一个Cache的模块。有时我需要更新缓存。在那个时候,所有读者都必须等待,而我更新地图。 如何与boost库进行同步?
P.S。:前段时间在Boost中是read_write_mutex。但在目前的Boost版本中,它错过了。

1 个答案:

答案 0 :(得分:4)

  
    

shared_mutex会替换read_write_mutex吗?

  
     

     

...

     

基本上unique_lock<shared_mutex>会给你写锁,   shared_lock<shared_mutex>会给你一个读锁定,并且   upgrade_mutex<shared_mutex>会给你一个读锁,而不是升级   将所有权(带移动)转移到unique_lock<shared_mutex>

http://lists.boost.org/Archives/boost/2008/01/132656.php