c++11的mutex unique_lock和lock_guard区别
来源:互联网 发布:python http api接口 编辑:程序博客网 时间:2024/06/06 00:21
C++11中有一个区域锁lock_guard,还有第二个区域锁unique_lock。
区域锁lock_guard使用起来比较简单,除了构造函数外没有其他member function,在整个区域都有效。
区域锁unique_guard除了lock_guard的功能外,提供了更多的member_function,相对来说更灵活一些。
unique_guard的最有用的一组函数为:
lock
(public member function)
try_lock
(public member function)
try_lock_for
TimedLockable
mutex, returns if the mutex has been unavailable for the specified time duration (public member function)
try_lock_until
TimedLockable
mutex, returns if the mutex has been unavailable until specified time point has been reached (public member function)
unlock
通过上面的函数,可以通过lock/unlock可以比较灵活的控制锁的范围,减小锁的粒度。
通过try_lock_for/try_lock_until则可以控制加锁的等待时间,此时这种锁为乐观锁。
以上为粗浅理解,后面有新的心得在补充之。
阅读全文
0 0
- c++11的mutex unique_lock和lock_guard区别
- lock_guard和unique_lock的区别
- C++11中lock_guard和unique_lock的区别
- std::lock_guard 和 std::unique_lock的区别
- c++ unique_lock与lock_guard的区别
- std::mutex std::unique_lock std::lock_guard std::recursive_mutex的理解
- Thread lock_guard 和 unique_lock
- std::lock_guard std::unique_lock 区别
- 锁对象---lock_guard和unique_lock
- c++11多线程的创建和unique_lock<mutex>的使用
- c++ 11 lock_guard/unique_lock详解
- C++11 std::unique_lock与std::lock_guard区别及多线程应用实例
- RAII 想到AutoLock,Mutex类和C++11中的unique_lock
- C++11的mutex和lock_guard,muduo的MutexLock 与MutexLockGuard
- C++11的mutex和lock_guard,muduo的MutexLock 与MutexLockGuard
- C++11 mutex方便的自解锁lock_guard
- C++11 mutex方便的自解锁lock_guard
- boost中shared_lock和unique_lock的区别
- IOS11新特性:安全区域(tableview内容下移状态栏的高度)
- 动态vps搭建代理ip
- MongoDB安装与win10下服务配置
- 学习大纲
- Android自定义TextView根据控件高度和宽度,解决字体适配问题
- c++11的mutex unique_lock和lock_guard区别
- 4399小游戏怎样下载到本地玩
- 移动端下单指操作大面积出发问题
- Servlet生命周期与工作原理
- opencv3.2(with ffmpeg) 交叉编译移植到arm板(imx6),成功跑起来。
- 如何优化tomcat配置(从内存、并发、缓存几个方面)优化
- 单调栈、单调队列、线段树、LCA、二维树状数组、Bitset讲解
- 放大镜小案例_JavaScript
- 2、Docker创建镜像