c语言中怎样创建多线程?
发布网友
发布时间:2022-04-20 03:22
我来回答
共1个回答
热心网友
时间:2023-09-16 03:02
/*这是我写的最简单的多线程程序,看懂不?*/\x0d\x0a#include
\x0d\x0a#include \x0d\x0a//#include \x0d\x0a\x0d\x0aDWORD WINAPI ThreadProc1( LPVOID lpParam ) \x0d\x0a{\x0d\x0a\x0d\x0a int i=0,j=0;\x0d\x0a while(1)\x0d\x0a {\x0d\x0a printf("hello,this thread 1 ...\n");\x0d\x0a \x0d\x0a //延时\x0d\x0a for(i=0;i<200000000;i++)\x0d\x0a {\x0d\x0a ;\x0d\x0a }\x0d\x0a }\x0d\x0a} \x0d\x0a\x0d\x0aDWORD WINAPI ThreadProc2( LPVOID lpParam ) \x0d\x0a{\x0d\x0a\x0d\x0a int i=0,j=0;\x0d\x0a while(1)\x0d\x0a {\x0d\x0a printf("hello,this thread 2 ...\n");\x0d\x0a \x0d\x0a //延时\x0d\x0a for(i=0;i<200000000;i++)\x0d\x0a {\x0d\x0a ;\x0d\x0a }\x0d\x0a }\x0d\x0a} \x0d\x0a\x0d\x0avoid main()\x0d\x0a{\x0d\x0a int i=0;\x0d\x0a //创建线程1\x0d\x0a CreateThread( \x0d\x0a NULL, // default security attributes\x0d\x0a 0, // use default stack size \x0d\x0a ThreadProc1, // thread function \x0d\x0a NULL, // argument to thread function \x0d\x0a 0, // use default creation flags \x0d\x0a NULL); // returns the thread identifier \x0d\x0a\x0d\x0a //创建线程2\x0d\x0a CreateThread( \x0d\x0a NULL, // default security attributes\x0d\x0a 0, // use default stack size \x0d\x0a ThreadProc2, // thread function \x0d\x0a NULL, // argument to thread function \x0d\x0a 0, // use default creation flags \x0d\x0a NULL); // returns the thread identifier\x0d\x0a\x0d\x0a //让主线程进入循环,主线程若退出,子线程1,2会被系统“杀死”\x0d\x0a while(1)\x0d\x0a {\x0d\x0a printf("hello,this thread 0 ...\n");\x0d\x0a \x0d\x0a //延时\x0d\x0a for(i=0;i<200000000;i++)\x0d\x0a {;}\x0d\x0a\x0d\x0a }\x0d\x0a}