多线程疑问
#include <iostream>
#include <windows.h>
int iq=0;
HANDLE hMutex;
//using namespace std;
void first_thread()
{
WaitForSingleObject(hMutex,INFINITE);
printf("2-first_thread()\n");
for (int i=1;i<=1000000000;i++)
{
if (i==1000000000)
//MessageBox(NULL,(const char *)"1000000000","提示",64);
printf("2-1000000000\n");
}
}
void main()
{
HANDLE hth[2];
DWORD ThreadID;
hMutex=CreateMutex(NULL,FALSE,NULL);
hth[0]=CreateThread(NULL,0,(LPTHREAD_START_ROUTINE) first_thread,
NULL,0,(LPDWORD)&ThreadID);
WaitForMultipleObjects(1,hth,TRUE,INFINITE);
printf("1-End Program\n");
}
// 运行打印结果为:
printf("2-first_thread()\n")
printf("2-1000000000\n")
printf("1-End Program\n")
//设计目结果是:
printf("2-first_thread()\n")
printf("1-End Program\n")
printf("2-1000000000\n")
//请指点