[英]Is the purpose of std::scoped_lock only to handle multiple mutexes, compared to std::lock_guard?
在閱讀有關std::scoped_lock
和std::lock_guard
的文檔時,它似乎唯一的區別是scoped_lock
可以處理多個鎖衛並且可以在解鎖時避免死鎖。
這是唯一的區別嗎? 如果我只有一個mutex
,是否應該繼續使用use lock_guard
?
據我所知,唯一重要的區別是scoped_lock
具有可變參數構造函數,該構造函數采用了您提到的多個mutex
。 另外,您可以使用模板專門化來實現scoped_lock
的單參數版本。
因此, lock_guard
有點非正式地被“棄用”。
我認為因為兼容性, lock_guard
仍然存在。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.