C++多线程库的常用模板类 std::lock_guard

格式:类名 + 头文件 + 用例 + 解释说明

 1 模板类类名: 
 2 std::lock_guard
 3 
 4 头文件: 
 5 #include <mutex>
 6 
 7 用例:
 8 
 9 std::mutex m;
10 std::lock_guard<std::mutex> lk(m);

解释说明:

C++标准库为互斥量提供了一个RAII语法的模板类std::lock_guard,在构造时对互斥量上锁,并在析构的时进行解锁,从而保证了一个已锁互斥量能被正确解锁。

小熊理解:

guard 单词有守卫的意思, 因此我把 std::lock_guard 叫做 “锁的守卫” 。  其实在C++编程中,“守卫“ 的编程思想还是很常见也很重要的。

原文地址:https://www.cnblogs.com/azbane/p/15438045.html