std::unique_lock使用案例
时间: 2023-12-08 19:35:51 浏览: 75
C++11多线程加锁方式.doc
std::unique_lock是C++11中提供的一种锁的封装类,它提供了比std::lock_guard更加灵活的锁定机制。下面是std::unique_lock的一个使用案例:
在一个类A中,我们增加了一个成员函数rtn_unique_lock(),它返回一个局部的std::unique_lock对象。在inMsgRecvQueue()函数中,我们使用for循环向msgRecvQueue中添加元素。在每次循环中,我们都会调用rtn_unique_lock()函数返回一个std::unique_lock对象,然后使用该对象锁定互斥量,向msgRecvQueue中添加元素,最后该对象会在循环结束时被销毁,从而释放互斥量。这个案例展示了std::unique_lock的灵活性和方便性,可以更加方便地控制锁的生命周期。
阅读全文