C++多线程学习笔记
文章平均质量分 93
如题
Rache_Bartmoss
大概会拒绝你司
展开
-
C++ 并发与多线程学习笔记(七)原子操作
引例先来设想一个场景:存在一个变量,有线程要读这个变量,有线程要写这个变量:int share_value = 0;void threadFunc(){ for (int i = 0; i < 100000; i++) //每个线程进行10万次计算 share_value++;}int main(){ clock_t start = clock();//为了分析性能,...原创 2020-03-06 14:21:59 · 197 阅读 · 0 评论 -
C++ 并发与多线程学习笔记(五)单例设计模式 共享数据分析
在开始学习之前,先简单讲讲对于设计模式的概念,设计模式是一些代码的写法,并非什么新奇的技术,是一些歪果仁的模块化编程的经验总结,是一种设计程序的思想或者说思路模板。在前几年设计模式刚被引入的时候,大家觉得很高大上,因此曾被部分夸大,但实际中并不是必要的,用设计模式写出来的代码比较晦涩,维护、接手的时候都有一定难度。设计模式有它的优点,要活学活用,不要深陷其中,正确的认识它。所有实用的编程方法和技术......原创 2020-02-23 21:04:21 · 446 阅读 · 0 评论 -
C++ 并发与多线程学习笔记(二)线程启动、结束、创建、join()、detach()
一个进程必然包含一个主线程,进程和主线程密不可分。thread:是一个标准库里的类实例化一个thread对象即可操作线程例:void myfun(){ ...}int main(){ ... std::thread myThreadObj(myfun); myThreadObj.join(); ... return 0;}join()方法:加入/汇合,作用是阻塞...原创 2020-02-16 14:22:01 · 652 阅读 · 0 评论 -
C++ 并发与多线程学习笔记(三)线程传参隐患 成员函数指针做线程函数
传递临时对象作为线程参数先来看一个例子:#include <string>#include <iostream>using namespace std;void myprint(const int &i,char *pmybuf){ cout << i << endl; cout << pmybuf <<...原创 2020-02-17 20:42:58 · 1140 阅读 · 0 评论 -
C++ 并发与多线程学习笔记(四) 线程数据共享 互斥锁 死锁
消息队列的应用除了线程之间,还在进程间、系统间有广泛的应用,消息可以很简单,也可以很复杂,面对庞杂的数据时,消息队列是常用的思想,市面上有很多第三方软件封装好了消息队列供企业使用。原创 2020-02-21 16:56:24 · 388 阅读 · 0 评论