随笔分类 -  C++多线程

C++进阶
摘要:一个C++的单例类,类里面定义了一个线程对象,线程对象会定时去计算一个时间,并返回这个计算出来的时间。 应用场景: 比如,有些比较消耗时间的操作,就可以放在线程里面定时计算,我们在外部定时读取。 这样就可以避免主线程被阻塞。 #include <iostream> #include <thread> 阅读全文
posted @ 2024-03-31 18:08 He_LiangLiang 阅读(17) 评论(0) 推荐(0) 编辑
摘要:使用文件流的方式,解析 cat /proc/meminfo 文件里面的数据 #include <iostream> #include <fstream> #include <sstream> #include <string> #include <unordered_map> #include <m 阅读全文
posted @ 2024-03-31 08:37 He_LiangLiang 阅读(18) 评论(0) 推荐(0) 编辑
摘要:在C++中,std::promise对象调用get_future()方法返回一个std::future对象,而不是指针、引用或其他类型的对象。std::future对象用于获取与std::promise对象相关联的异步操作的结果。 std::promise和std::future是C++标准库中的一 阅读全文
posted @ 2024-03-17 13:11 He_LiangLiang 阅读(51) 评论(0) 推荐(0) 编辑
摘要:#1.关闭 tafnode ps -ef | grep tafnode /usr/local/app/taf/tafnode/util/stop.sh #2.启动程序gdb /usr/local/app/taf/tafnode/data/HQExtend.StockPoolAlarmServer/b 阅读全文
posted @ 2023-05-30 09:46 He_LiangLiang 阅读(11) 评论(0) 推荐(0) 编辑
摘要:工作中,我们会遇到这样一种场景,就是某个函数,是被外部调用的,而且要求这个被调用的函数不能阻塞,不能太耗时,否则会影响外部的正常调用。 比如,示例中的TestA函数,它是被外部调用的,而且是一个耗时的操作,它还修改了外部的其他变量。 这时候,需要用线程来解耦,避免TestA函数因为太过耗时而阻塞。 阅读全文
posted @ 2023-02-02 14:12 He_LiangLiang 阅读(120) 评论(0) 推荐(0) 编辑
摘要:一个初级的线程函数 创建10个线程,每个线程内进行计数操作,有锁. 对认识线程,有一定的帮助作用。 #include <iostream> // std::cout #include <thread> // std::thread #include <mutex> // std::mutex usi 阅读全文
posted @ 2022-08-29 22:36 He_LiangLiang 阅读(21) 评论(0) 推荐(0) 编辑
摘要:1.查看线程信息 [upchina@iZbp14z6qodocy209yj5c8Z PriceAlarmServerGnn]$ ps -ef | grep "PriceAlarm" upchina 21261 19389 5 Apr15 ? 03:56:48 /usr/local/app/taf/t 阅读全文
posted @ 2022-04-18 11:50 He_LiangLiang 阅读(363) 评论(0) 推荐(0) 编辑
摘要:这是堆栈信息,打印此处变量,值正常,没有非法值。 难道是多线程读写冲突了? #0 0x00007f7151d92866 in __memcpy_ssse3_back () from /lib64/libc.so.6#1 0x00007f71525e0650 in std::string::_Rep: 阅读全文
posted @ 2022-04-18 09:17 He_LiangLiang 阅读(510) 评论(0) 推荐(0) 编辑
摘要:这里,只是记录自己的学习笔记。 顺便和大家分享多线程的基础知识。然后从入门到实战。有代码。 知识点来源: https://edu.51cto.com/course/26869.html C++11 实现base16,并与单线程进行性能测试 base16编码,解码,请看这篇文章:https://www 阅读全文
posted @ 2021-12-04 22:00 He_LiangLiang 阅读(125) 评论(0) 推荐(0) 编辑
摘要:这里,只是记录自己的学习笔记。 顺便和大家分享多线程的基础知识。然后从入门到实战。有代码。 知识点来源: https://edu.51cto.com/course/26869.html Promise 和 Future 的原理,以及演示 1 //线程异步和通信 2 3 4 /* 5 //promis 阅读全文
posted @ 2021-12-04 18:19 He_LiangLiang 阅读(207) 评论(0) 推荐(0) 编辑
摘要:这里,只是记录自己的学习笔记。 顺便和大家分享多线程的基础知识。然后从入门到实战。有代码。 知识点来源: https://edu.51cto.com/course/26869.html 条件变量应用线程通信解决线程退出时的阻塞问题 这里是重构了前面的一个工程。 xthread.h 1 #pragma 阅读全文
posted @ 2021-11-24 23:33 He_LiangLiang 阅读(104) 评论(0) 推荐(0) 编辑
摘要:这里,只是记录自己的学习笔记。 顺便和大家分享多线程的基础知识。然后从入门到实战。有代码。 知识点来源: https://edu.51cto.com/course/26869.html 这里,最关键是要理解 cv.wait 在第2个参数是lambda表达式的时候,是如何处理的。 1 #include 阅读全文
posted @ 2021-11-24 23:17 He_LiangLiang 阅读(78) 评论(0) 推荐(0) 编辑
摘要:这里,只是记录自己的学习笔记。 顺便和大家分享多线程的基础知识。然后从入门到实战。有代码。 知识点来源: https://edu.51cto.com/course/26869.html 使用互斥锁 + list 模拟 线程通信 1.封装线程基类 XThread 控制线程启动和停止 2.模拟消息服务器 阅读全文
posted @ 2021-11-24 14:08 He_LiangLiang 阅读(113) 评论(0) 推荐(0) 编辑
摘要:这里,只是记录自己的学习笔记。 顺便和大家分享多线程的基础知识。然后从入门到实战。有代码。 知识点来源: https://edu.51cto.com/course/26869.html scoped_lock C++17 用于多个互斥体的免死锁 RAII 封装器 类似lock explicit sc 阅读全文
posted @ 2021-11-23 15:00 He_LiangLiang 阅读(68) 评论(0) 推荐(0) 编辑
摘要:这里,只是记录自己的学习笔记。 顺便和大家分享多线程的基础知识。然后从入门到实战。有代码。 知识点来源: https://edu.51cto.com/course/26869.html unique_lock c++11 unique_lock C++11 实现可移动的互斥体所有权包装器 支持临时释 阅读全文
posted @ 2021-11-22 20:52 He_LiangLiang 阅读(67) 评论(0) 推荐(0) 编辑
摘要:这里,只是记录自己的学习笔记。 顺便和大家分享多线程的基础知识。然后从入门到实战。有代码。 知识点来源: https://edu.51cto.com/course/26869.html C++11 支持的RAII管理互斥资源 lock_guard C++11 实现严格基于作用域的互斥体所有权包装器 阅读全文
posted @ 2021-11-22 18:32 He_LiangLiang 阅读(79) 评论(0) 推荐(0) 编辑
摘要:这里,只是记录自己的学习笔记。 顺便和大家分享多线程的基础知识。然后从入门到实战。有代码。 知识点来源: https://edu.51cto.com/course/26869.html 2 利用栈特性自动释放锁 RAII2.1 什么是RAII,手动代码实现RAII(Resource Acquisit 阅读全文
posted @ 2021-11-22 17:35 He_LiangLiang 阅读(53) 评论(0) 推荐(0) 编辑
摘要:这里,只是记录自己的学习笔记。 顺便和大家分享多线程的基础知识。然后从入门到实战。有代码。 知识点来源: https://edu.51cto.com/course/26869.html 共享锁,读写锁 c++14 共享超时互斥锁 shared_timed_mutexc++17 共享互斥 shared 阅读全文
posted @ 2021-11-22 16:36 He_LiangLiang 阅读(44) 评论(0) 推荐(0) 编辑
摘要:这里,只是记录自己的学习笔记。 顺便和大家分享多线程的基础知识。然后从入门到实战。有代码。 知识点来源: https://edu.51cto.com/course/26869.html 1.多线程同步通信 1.1多线程状态 1.1.1线程状态说明: 初始化 ( Init ) :该线程正在创建。 就绪 阅读全文
posted @ 2021-11-22 09:57 He_LiangLiang 阅读(331) 评论(0) 推荐(0) 编辑
摘要:这里,只是记录自己的学习笔记。 顺便和大家分享多线程的基础知识。然后从入门到实战。有代码。 知识点来源: https://edu.51cto.com/course/26869.html 多线程调用函数,但函数只进入一次 使用 C++11 的 call_once 函数 1 #include <iost 阅读全文
posted @ 2021-11-22 08:54 He_LiangLiang 阅读(26) 评论(0) 推荐(0) 编辑