15,471
社区成员
发帖
与我相关
我的任务
分享
#include "stdafx.h"
#include "iostream.h"
#include "windows.h"
DWORD WINAPI thread(LPVOID p)
{
Sleep(1);
cout<<"123"<<endl;
return 0;
}
int main(int argc, char* argv[])
{
HANDLE aa;
for (int i = 0;i<3;i++)
{
aa = CreateThread(0,0,thread,"heihei",0,0);
CloseHandle(aa);
}
Sleep(1000);
return 0;
}
int main(int argc, char* argv[])
{
HANDLE aa;
for (int i = 0;i<3;i++)
{
aa = CreateThread(0,0,thread,"heihei",0,0);
if (aa!=INVALID_HANDLE_VALUE)
{
CloseHandle(aa);
}
}
Sleep(1000);
return 0;
}
#include "stdafx.h"
#include "iostream.h"
#include "windows.h"
CRITICAL_SECTION CriticalSection;
DWORD WINAPI thread(LPVOID p)
{
EnterCriticalSection(&cs);
//Sleep(1);
cout<<"123"<<endl;
LeaveCriticalSection(&cs);
return 0;
}
int main(int argc, char* argv[])
{
InitializeCriticalSection(&cs);
HANDLE aa[3]={0};
for (int i = 0;i<3;i++)
{
aa[i] = CreateThread(0,0,thread,"heihei",0,0);
CloseHandle(aa);
}
Sleep(1000);
WaitForMultipleObjects(3,aa,TRUE,INFINITE);//等待直到子线程退出。
DeleteCriticalSection(&cs);
return 0;
}