std::lock_guard 与 std::unique_lock 对 mutex 进行自动加解锁。
mutex m;
void fun()
{
unique_lock<mutex> mlock(m);
}
unique_lock mlock(m);
线程没有 m 的所有权,根据块语句的循环实现自动加解锁。
线程根据 m 属性,来判断是否可以加锁、解锁。
void fun()
{
lock_guard<mutex> mlock(m);
}
lock_guard mlock(m);
线程拥有 m 的所有权,实现自动加解锁。
线程读取 m 失败时,则一直等待,直到读取成功。
线程会把 m 一直占有,直到当前线程完成才释放,其它线程才能访问。

最新文章

  1. spring-aop学习【基于注解】
  2. LoadRunner ERROR:Could not call flex.messaging.io.amf.ASObject.readObject() : Cannot parse date.
  3. nyoj 142, poj 1039 ,hdu 1454 管道问题
  4. [转]很详细的devexpress应用案例
  5. SqlBulkCopy 插入100W条数据时 属性BatchSize的作用
  6. Codeforces Round #353 (Div. 2) E. Trains and Statistic 线段树+dp
  7. 【Java】Eclipse导出jar包与javadoc
  8. 实现Linux下的ls -l命令
  9. 常见Web Service 使用网址
  10. Dynamic CRM 2013 on Windows Azure VM
  11. java中基本类型占用字节数
  12. web从入门开始(1)------简介
  13. JavaScript知识点整理 (二)
  14. wps 操作
  15. Exp4 恶意代码分析 ——20164325王晓蕊
  16. Django(十九)Ajax全套
  17. 大数据学习笔记02-HDFS-常用命令
  18. R语言学习 第四篇:函数和流程控制
  19. centos7下源码安装mysql5.7.16
  20. phonegap/cordova学习建议

热门文章

  1. 即时聊天APP(五) - 聊天界面
  2. 树莓派3安装openwrt
  3. 微服务SpringCloud之zipkin链路追踪
  4. mybatis中Insert后主键返回
  5. vue-router之路由元信息
  6. 常见MySQL数据库语句
  7. Spring 梳理-运行时动态注入bean
  8. CentOS8-网卡配置
  9. 【SQL server基础】object_id()函数
  10. IntelliJ IDEA 如何在同一个窗口创建多个项目--超详细教程