使用系统调用 CreateThread () 创建一个子线程,并在子线程中 显示:Thread is Running!。为了能让用户清楚地看到线程的运行情 况,使用Sleep () 使线程挂起5秒,之
时间: 2024-10-28 15:07:02 浏览: 38
CreateThread函数创建窗口线程.rar_createthread_线程 窗口_线程函数
在Windows环境下,你可以使用CreateThread函数创建一个新的子线程,并结合OutputDebugString API来打印消息"Thread is Running!"。这是一个基本的示例:
```c++
#include <windows.h>
#include <iostream>
DWORD WINAPI ThreadFunction(LPVOID lpParam) {
// 线程开始时的输出
OutputDebugString("Thread is Running!\n");
// 让线程暂停5秒钟
Sleep(5000); // 5000毫秒等于5秒
return 0; // 返回值并不重要,通常设为0表示成功结束
}
int main() {
// 创建新线程的参数,这里可以传递给线程函数的额外信息,这里直接设为空指针
LPVOID param = NULL;
// 创建线程并获取其句柄
HANDLE threadHandle = CreateThread(NULL, 0, ThreadFunction, param, 0, NULL);
if (threadHandle == NULL) {
std::cerr << "Failed to create thread." << std::endl;
return -1;
}
// 等待子线程结束
WaitForSingleObject(threadHandle, INFINITE);
CloseHandle(threadHandle);
return 0;
}
```
在这个程序中,`ThreadFunction`是一个线程入口点,它首先输出一条消息,然后让线程休眠5秒。主线程通过`CreateThread`函数启动这个新线程,并使用`WaitForSingleObject`等待子线程完成。
阅读全文