线程调度c

王朝other·作者佚名  2006-01-29
窄屏简体版  字體: |||超大  

#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;

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航