admin管理员组

文章数量:1599536

互斥量(std::mutex)是多线程间同时访问某一共享变量时,保证变量可被安全访问的手段。

引用 cppreference 的介绍:

1

The mutex class is a synchronization primitive that can be used to protect shared data from being simultaneously accessed by multiple threads.

锁住的代码少,这个粒度叫细,执行效率高。

锁住的代码多,这个粒度叫粗,执行效率低。

使用方法:

1:直接操作 mutex,即直接调用 mutex 的 lock/unlock 函数

try_lock() 函数是有返回值的,它表示用来尝试获取锁,如果获取成功,则返回true,如果获取失败(即锁已被其他线程获取),则返回false,这个方法无论如何都会立即返回。在拿不到锁时不会一直在那等待。

2:使用 lock_guard 自动加锁、解锁。

lock_guard是一个互斥量包装程序,它提供了一种方便的RAII(Resource acquisition is initialization &

本文标签: 变量多线程条件互斥conditionvariable