环境: windows + vs2015
直接上代码:
#include <iostream>
#include <thread>
#include <Windows.h>
using namespace std;
CRITICAL_SECTION myWInsec; //临界区对象
int func1(int id)
{
while (true)
{
EnterCriticalSection(&myWInsec); //进入临界区
cout << "id : " << id << endl;
LeaveCriticalSection(&myWInsec); //离开临界区
Sleep(100);
}
return 1;
}
int main()
{
InitializeCriticalSection(&myWInsec);//初始化windows临界区
for (int i = 0; i < 10; i++)
{
thread th(func1,i);
th.detach();
}
cin.get();
DeleteCriticalSection(&myWInsec); // 清除临界区资源
cout << "main end()..." << endl;
cin.get();
return 1;
}
记录完成