首选哪种boost::lock_guard
或boost::mutex::scoped_lock
?
我正在使用Boost.Thread,希望在可用时转向C++ 11线程。scoped_lock
是下一个c++标准的一部分吗?
相对于另一个优势,有什么优势吗?
注意:我知道scoped_lock
只是typedef
的lock_guard
。
编辑:我错了scoped_lock
是而不是是typedef
的lock_guard
。这是typedef
的unique_lock
。
最佳答案
阿米特说得对:boost::mutex::scoped_lock
是typedef
的boost::unique_lock<boost::mutex>
,而不是lock_guard
。 scoped_lock
在C++ 0x中不可用。
除非您需要unique_lock
的灵活性,否则我将使用lock_guard
。它更简单,并且更清楚地表达了将锁定限制在定义范围内的意图。
关于boost - boost::lock_guard与boost::mutex::scoped_lock,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2276805/