C++原子操作变量类型的使用和解析(C++多线程相关)

atomic只适用于多个线程操作同个变量时不会出错
可以用原子操作变量来让变量能够在多个线程中使用
用atomic头文件引入原子操作
以下用atomic包裹变量让int变成原子操作
在这里插入图片描述
可以用aotmic操作变量进行如下操作从而保证变量的原子性:
在这里插入图片描述
但是当用两个变量两个原子类型数据进行数据操作时还是依然会存在问题
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

当一个程序线程运行完addCount已经切换时下一个程序线程可能在还未执行addResource时又执行addCount,此时addCount就会执行两遍在这里插入图片描述

发布了137 篇原创文章 · 获赞 33 · 访问量 1605

猜你喜欢

转载自blog.csdn.net/qq_39885372/article/details/103948905