C++ windows multithread 多线程编程(一)

多线程编程

使用createthread需要提供LPTHREAD_START_ROUTINE线程函数,线程函数的签名为 void (*) (void * lpParam)

对于类静态函数或者全局函数,需要在LPTHREAD_START_ROUTINE强制定义ThreadProc

类静态函数:需要(LPTHREAD_START_ROUTINE)Class::StaticFunction

全局函数:需要(LPTHREAD_START_ROUTINE)GlobalFunction

createthread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadProc, pParam, 0, &threadId); 立即执行ThreadProc

createthread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadProc, pParam, CREATE_SUSPENDED, &threadId); Suspend线程

创建完需要使用CloseHandle函数来释放

使用WaitForSingleObject来在主调线程中等待子线程结束。

使用_beginthreadex来


你可能感兴趣的:(C++ windows multithread 多线程编程(一))