c++11多線程之主線程與子線程數據傳輸與共享

c++線程間的數據傳輸與共享分很多種,而使用全局變量是很常見的一種,下面先來看看最基礎的使用全局變量進行數據共享的例子:

#include<thread>
#include<iostream>
using namespace std;
static int id = 1;
void autoincrease(){
	id=id+1;
}
int main()
{
	cout << "before increase " << id << endl;
	thread mythread(autoincrease);
	mythread.join();
	cout << "after increase " << id << endl;
	
	return 0;
}



主線程可以獲得子線程處理之後的數據,然而這種方法顯得過於簡單,我們在傳輸處理的過程中,不會只想要處理一個int類型的數據,要是一個結構體,應該怎麼做?

下面來嘗試傳輸並處理一下一個類類型的數據。

首先,但需要把類類型數據傳輸給子線程處理時,我們需要定義傳輸類Message,一箇中轉接口ReceiveInterface




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章