boost shared_lock unique_lock区别

Posted xiongping_

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了boost shared_lock unique_lock区别相关的知识,希望对你有一定的参考价值。

shared_lock是read lock。被锁后仍允许其他线程执行同样被shared_lock的代码。这是一般做读操作时的需要。

unique_lock是write lock。被锁后不允许其他线程执行被shared_lock或unique_lock的代码。在写操作时,一般用这个,可以同时限制unique_lock的写和share_lock的读。

使用如下:

boost::shared_lock<boost::shared_mutex> read_lock;

boost::unique_lock<boost::shared_mutex> write_lock;

以上是关于boost shared_lock unique_lock区别的主要内容,如果未能解决你的问题,请参考以下文章

C++ boost共享锁 unique_lock shared_lock

Boost Shared_lock / Unique_lock,给写者优先权?

C++ 多线程 读锁之后不能跟写锁 shared_lock之后不能跟unique_lock 死锁 解决方案

C++ boost::upgrade_lock boost::upgrade_to_unique_lock如何使用 例子

C++ boost::upgrade_lock upgrade_to_unique_lock 升级锁 是什么 怎么用

C++中unique_lock和shared_lock有啥区别