2024年4月19日发(作者:)

CreateThread用法详解

今天我给大家讲一讲C++中的多线程编程技术,C++本身并没有提供任何多线程机

制,但是在windows下,我们可以调用SDK win32 api来编写多线程的程序,下面我就

此简单的讲一下:

创建线程的函数

HANDLE CreateThread(

LPSECURITY_ATTRIBUTES lpThreadAttributes, // SD

SIZE_T dwStackSize, // initial stack size

LPTHREAD_START_ROUTINE lpStartAddress, // thread function

LPVOID lpParameter, // thread argument

DWORD dwCreationFlags, // creation option

LPDWORD lpThreadId // thread identifier

);

在这里我们只用到了第三个和第四个参数,第三个参数传递了一个函数的地址,也是

我们要指定的新的线程。第四个参数是传给新线程的参数指针

eg1:

#include

#include

using namespace std;

DWORD WINAPI Fun(LPVOID lpParamter)

{

while(1) { cout<<"Fun display!"<

}

int main()

{

HANDLE hThread = CreateThread(NULL, 0, Fun, NULL, 0, NULL);

CloseHandle(hThread);

while(1) { cout<<"main display!"<