dan*_*ani 1 c++ multithreading mutex c++17
在阅读有关std::scoped_lock和的文档时std::lock_guard,它似乎唯一的区别是scoped_lock可以处理多个锁卫并且可以避免解锁时的死锁。
这是唯一的区别吗?如果我只有一个mutex,那么应该继续使用lock_guard吗?
据我所知,唯一重要的区别是,它scoped_lock具有一个可变参数构造函数,该变量构造函数采用了mutex您所提到的多个。此外,您可以scoped_lock使用模板专门化来实现的单参数版本。
因此,这lock_guard是非正式的“弃用”。
我认为lock_guard由于兼容性,它仍然存在。