程序很简单:#include <windows.h>
#include <iostream.h>DWORD WINAPI Fun1Proc( LPVOID lpParameter );int main()
{
HANDLE hThread1;
hThread1 = CreateThread(NULL,0,Fun1Proc,NULL,0,NULL);
CloseHandle(hThread1);
cout<<"main thread is running"<<endl;
Sleep(10);//放弃执行权力,才能执行线程1
return 0;
}DWORD WINAPI Fun1Proc( LPVOID lpParameter )
{
cout<<"thread1 is running"<<endl;
return 0;
}
但是我们发现了一些奇怪的事情:
就是每次打印的语句数不确定啊?有时候是一句"main thread is running",有时候是两句;感觉看不出来什么规律,菜鸟真心求助!
#include <iostream.h>DWORD WINAPI Fun1Proc( LPVOID lpParameter );int main()
{
HANDLE hThread1;
hThread1 = CreateThread(NULL,0,Fun1Proc,NULL,0,NULL);
CloseHandle(hThread1);
cout<<"main thread is running"<<endl;
Sleep(10);//放弃执行权力,才能执行线程1
return 0;
}DWORD WINAPI Fun1Proc( LPVOID lpParameter )
{
cout<<"thread1 is running"<<endl;
return 0;
}
但是我们发现了一些奇怪的事情:
就是每次打印的语句数不确定啊?有时候是一句"main thread is running",有时候是两句;感觉看不出来什么规律,菜鸟真心求助!
而Fun1Proc中的语句就得看运气了,如果main还没执行完而CPU时间片刚运行它执行,那它就能输出。如果main执行完了,也没有CPU时间片给它执行,那它就啥也不会输出。