#include<windows.h>
#include<conio.h>
#include<stdio.h>
DWORD ChildMain();
DWORD ChildMain1();
int Global=0;
main()
{
int j ,b;
INT giThreadNumber=1;
DWORD dwThreadId;
HANDLE hThread_2,hThread_3;
DWORD dwCreationFlags=0;
hThread_2=CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)ChildMain,(LPVOID)giThreadNumber,dwCreationFlags,&dwThreadId);
hThread_3=CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)ChildMain1,(LPVOID)giThreadNumber,dwCreationFlags,&dwThreadId);
printf("创建线程完成,线程1运行!\n");
for(j=0;j<50000;j++);
printf("线程1空循环%d次Global=%d\n",j,Global);
printf("线程1输入!\n");
b=getche();
printf("线程1第1次输入结果:%c\n",b);
b=getche();
printf("线程1第2次输入结果:%c\n",b);
getch();
}
DWORD ChildMain(giThreadNumber)
{
int j,b;
printf("线程2开始运行!\n");
Global=1000;
for(j=0;j<4000000;j++);
printf("线程2空循环%d次Global=%d\n",j,Global);
Global=2;
printf("线程2输入!\n");
b=getche();
printf("线程2第1次输入结果:%c\n",b);
b=getche();
printf("线程2第2次输入结果:%c\n",b);
while(1)
b=j+5;
}
DWORD ChildMain1(giThreadNumber)
{
int j,b;
printf("线程3开始运行!\n");
Global=6;
for(j=0;j<40000;j++);
printf("线程3空循环%d次Global=%d\n",j,Global);
Global=2;
printf("线程3输入!\n");
b=getche();
printf("线程3第1次输入结果:%c\n",b);
b=getche();
printf("线程3第2次输入结果:%c\n",b);
while(1)
b=j+5;
}