不退出:
1 #include <windows.h> 2 #include <process.h> 3 4 5 unsigned __stdcall _threadfun(void* pParam) 6 { 7 while(TRUE) 8 { 9 printf("hello world"); 10 } 11 } 12 13 int main(int argc, char* argv[]) 14 { 15 unsigned uThreaID; 16 _beginthreadex(NULL,0,_threadfun,NULL,NULL,&uThreaID); 17 //不调用ExitThread,主线程执行完成退出,crt会终止所有的线程,进程退出 18 //如果调用了ExitThread退出主线程,crt不会终止其他的线程,虽然主线程退出了,进程仍然在 19 ExitThread(1);//显示调用ExitThread结束主线程,进程不退出 20 21 return 0; 22 }
退出:
1 #include <windows.h> 2 #include <process.h> 3 4 5 unsigned __stdcall _threadfun(void* pParam) 6 { 7 while(TRUE) 8 { 9 printf("hello world"); 10 } 11 } 12 13 int main(int argc, char* argv[]) 14 { 15 unsigned uThreaID; 16 _beginthreadex(NULL,0,_threadfun,NULL,NULL,&uThreaID); 17 //不调用ExitThread,主线程执行完成退出,crt会终止所有的线程,进程退出 18 //如果调用了ExitThread退出主线程,crt不会终止其他的线程,虽然主线程退出了,进程仍然在 19 //ExitThread(1);//不调用ExitThread,主线程执行完成退出,crt会终止所有的线程,进程退出
20 21 return 0; 22 }