用c++使用系统调用函数 CreateThread()创建一个子线程并在子线程序中显示:Thread isRuning!。为了能让用户清楚地看到线程的运行情况使用函数 Sleep()使线程挂起5s,之后使用函数ExitThread(0)撤销线程。
时间: 2024-03-18 18:40:09 浏览: 157
下面是一个使用 `CreateThread()` 函数创建子线程的例子,其中子线程会显示 "Thread isRunning!",然后挂起5秒钟后退出。
```c++
#include <windows.h>
#include <iostream>
using namespace std;
// 子线程的入口函数
DWORD WINAPI ThreadProc(LPVOID lpParam) {
cout << "Thread isRunning!" << endl;
Sleep(5000); // 挂起5秒钟
ExitThread(0); // 退出线程
}
int main() {
HANDLE hThread;
DWORD dwThreadId;
// 创建子线程
hThread = CreateThread(NULL, 0, ThreadProc, NULL, 0, &dwThreadId);
if (hThread == NULL) {
cout << "CreateThread failed!" << endl;
return 1;
}
// 等待子线程结束
WaitForSingleObject(hThread, INFINITE);
// 关闭线程句柄
CloseHandle(hThread);
return 0;
}
```
当程序运行时,会创建一个子线程并显示 "Thread isRunning!",然后挂起5秒钟后退出。主线程会等待子线程结束后再退出。
阅读全文