#include<cstdio>
#include<cstdlib>
#include<iostream>
#include <thread>
#include <mutex>
#include <list>
#include <atomic>
using namespace std;
class A
{
public:
//类型转换构造函数
A()
{
cout << "构造函数执行" << this << "threadid =" << std::this_thread::get_id() << endl;
}
A(const A & a)
{
cout << "拷贝构造函数执行" << this << "threadid =" << std::this_thread::get_id() << endl;
}
~A()
{
cout << "析构函数执行" << this << "threadid =" << std::this_thread::get_id() << endl;
}
public:
//输入
bool inMsgLUTProc(int & command)
{
for (int i = 0; i < 1000; ++i)
{
m_count += 1;
//++m_count;
//m_count = m_count + 1;
cout << m_count << endl;
}
return true;
}
//把数据从消息队列中取出的线程
bool o
std::atomic<int> m_count 原子操作
最新推荐文章于 2024-07-30 15:00:10 发布
本文深入探讨了C++中的std::atomic模板类,它用于实现线程安全的整型变量操作。通过std::atomic<int> m_count,我们可以确保在多线程环境下对m_count的增加、减少等操作不会出现数据竞争问题,从而保证了并发编程的正确性。
摘要由CSDN通过智能技术生成