• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
我是张洪铭我是熊博士
时光静好,与君同;细水长流,与君语
博客园    首页    新随笔    联系   管理    订阅  订阅
1 2 3 4 5 ··· 47 下一页
2022年8月7日
QVariant::UserType QVariant自定义数据类型的深入认识
摘要: 1 /************************************************* 2 Copyright: zhm_xxbs@2022 3 Author: 张洪铭 4 Date: 2022年08月07日 5 Description:主要围绕QVariant类型,编写代码深入认 阅读全文
posted @ 2022-08-07 15:20 我是张洪铭我是熊博士 阅读(1428) 评论(0) 推荐(0)
2022年5月17日
采用QSharedMemory实现多进程间的通信 Linux | window
摘要: 直接上代码:简单的很 1 ///////////////////////////////////////////////////////////////////// 2 /// file: ProcessCommunicate.h 3 /// Description:本文采用<QSharedMemo 阅读全文
posted @ 2022-05-17 21:32 我是张洪铭我是熊博士 阅读(251) 评论(0) 推荐(0)
2022年1月17日
C++ std::Recursive_mutex 支持 “对同一互斥量进行嵌套加锁”
摘要: 使用场景:一个类的不同成员函数之间,存在相互调用的情况, 如果这样的成员函数作为线程的入口函数时,就会出现在成员函数 func1()中对某个互斥量上锁,并且, func1()中调用了成员函数 func2() ,实际上 func2()为了保护成员数据,func2()内部也对同一个互斥量上锁。 在我们对 阅读全文
posted @ 2022-01-17 16:38 我是张洪铭我是熊博士 阅读(1586) 评论(0) 推荐(0)
采用C++17新标准 “共享锁”和“独占锁”更低消耗更好性能地保护不常更新的共享数据
摘要: 用到的标准库: std::shared_lock<>、 std::shared_mutex、 std::lock_guard<>。 另外还有 std::shared_timed_mutex(此处不讲)。 分析:对于保护不常更新的共享数据, 因为写只是很偶然的发生,更频繁的是读取。如果不区分 “读者” 阅读全文
posted @ 2022-01-17 14:39 我是张洪铭我是熊博士 阅读(496) 评论(0) 推荐(0)
2022年1月16日
std::once_flag结构体和std::call_once()函数搭配来处理条件竞争
摘要: C++标准委员会也认为条件竞争的处理很重要。所以,C++标准库提供了 std::once_flag结构体 和 std::call_once() 函数,来处理条件竞争(这种情况的条件竞争:臭名昭著的双重检查锁模式)。 比起锁住互斥量并显示的检查指针,只需要使用 std::call_once() 就可以 阅读全文
posted @ 2022-01-16 22:32 我是张洪铭我是熊博士 阅读(495) 评论(0) 推荐(0)
双重检查锁--声名狼藉, 臭名昭著
摘要: 双重检查锁模式,是经常听到和用到的方式,既保护了数据的初始化过程,也避免了每次访问时,多个线程要序列化的检查锁问题。 不过,又有观点说,双重检查锁模式是声名狼藉,是臭名昭著的。下面我们通过例子来分析论证。直接贴代码,附上执行结果,我们先看效果,再做分析。 1 xxx.h 2 3 #include < 阅读全文
posted @ 2022-01-16 21:26 我是张洪铭我是熊博士 阅读(349) 评论(0) 推荐(0)
2021年11月26日
360浏览器账号
该文被密码保护。 阅读全文
posted @ 2021-11-26 20:50 我是张洪铭我是熊博士 阅读(2) 评论(0) 推荐(0)
2021年10月30日
std::get<C++11多线程库~线程间共享数据>(10):使用互斥量保护共享数据(5)
摘要: 1 /* 2 * 话题1:使用互斥量保护共享数据 3 * 4 * 接下来学习第五个小话题:避免死锁的进阶指导 5 * 6 * 这一小节的内容,完全引用,只在最后补充上我对这部分的理解,以及更多一点的想法 7 */!!! 非常有意思的是下面讲到的 “使用锁的层次结构”。 锁的层次的意义在于提供对运行时 阅读全文
posted @ 2021-10-30 21:13 我是张洪铭我是熊博士 阅读(139) 评论(0) 推荐(0)
2021年10月29日
std::get<C++11多线程库~线程间共享数据>(10):使用互斥量保护共享数据(4)
摘要: 1 #ifndef DEADLOCK_QUESTIONDESCRIBLE_AND_SOLUTION_H 2 #define DEADLOCK_QUESTIONDESCRIBLE_AND_SOLUTION_H 3 4 /* 5 * 话题1:使用互斥量保护共享数据 6 * 7 * 接下来学习第四个小话题 阅读全文
posted @ 2021-10-29 22:35 我是张洪铭我是熊博士 阅读(41) 评论(0) 推荐(0)
2021年10月28日
C++多线程库的常用函数 std::lock()
摘要: 格式:函数名 + 头文件 + 用例 + 解释说明 1 函数名: 2 std::lock() 3 4 头文件: 5 #include <mutex> 6 7 用例: 8 std::mutex ma, mb, mc; 9 std::lock(ma, mb, mc); 10 std::lock_guard 阅读全文
posted @ 2021-10-28 21:53 我是张洪铭我是熊博士 阅读(959) 评论(0) 推荐(1)
1 2 3 4 5 ··· 47 下一页
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3