std::unique_lock 怎么用
时间: 2023-12-08 20:58:31 浏览: 158
C++ 并发编程之锁的艺术:std::lock-guard与std::unique-lock深度解析
std::unique_lock 是一个 C++11 中用于管理互斥量的 RAII 类,用法如下:
```
#include <mutex>
std::mutex mtx; // 互斥量
std::unique_lock<std::mutex> lck(mtx); // 用unique_lock管理互斥量
// 临界区
```
通过这种方式,std::unique_lock 类会在创建时锁定互斥量,析构时自动释放锁。也可以通过调用 unlock() 方法手动释放锁。
注意,std::unique_lock 不仅可以用于 std::mutex,也可以用于其他一些符合特定接口的同步对象,比如 std::shared_mutex 等。
阅读全文