std::lock_guard和std::unique_lock的区别
作者:互联网
std::lock_guard
1 初始化的时候锁定std::mutex
std::mutex m_mtx;
std::lock_guard<std::mutex> m_lock(m_mtx);
2 不可以手动加锁和解锁
3 过了作用域后自动解锁
std::unique_lock
1 初始化的时候不需要必须锁定std::mutex
std::mutex m_mtx;
std::unique_lock<std::mutex> m_lock(m_mtx);
2 可以手动加锁和解锁
m_lock.lock();
m_lock.unlock();
3 过了作用域后自动解锁
标签:std,mtx,lock,解锁,guard,mutex 来源: https://www.cnblogs.com/smallredness/p/10956084.html