C++11标準,簡化了C++的多線程程式設計,友善了很多很多。但是,網上很多有關C++11多線程的例子,都有問題,都用了join,根本沒有實作多線程的機制。現在,貼上C++11多線程的例子,通過detach實作多線程同步運作,以供參考。此例子,已在VC2012中運作過,交替輸出了"func"和"func2"。
#include "stdafx.h"
#include <iostream>
#include <thread>
using namespace std;
void func(){
while(true){
cout<<"func"<<endl;
}
}
void func2(){
while(true){
cout<<"func2"<<endl;
}
}
int _tmain(int argc, _TCHAR* argv[])
{
thread t1(func);
t1.detach();
thread t2(func2);
t2.detach();
system("pause");
return 0;
}