c++ - window操作系统下c中的CreateThread问题

标签 c++ c multithreading windows

我有以下启动线程的代码。

int iNMHandleThread = 1;
HANDLE hNMHandle = 0;
hNMHandle = CreateThread( NULL, 0, NMHandle, &iNMHandleThread, 0, NULL);
if ( hNMHandle == NULL)
ExitProcess(iNMHandleThread);

我的问题是

  1. 如果我在线程已经处于运行状态时运行这段代码会发生什么。
  2. 我想启动NMHandle的多个独立线程请给我一些提示来解决这个问题。

最佳答案

每次您调用 CreateThread 时,都会启动一个独立于任何其他当前运行的线程的新线程。您的“NMHandle”函数是否能够一次在多个线程上运行取决于您:例如,它是否依赖于任何全局状态?

关于c++ - window操作系统下c中的CreateThread问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3138283/

相关文章:

c++ - 是否有 linuxthreads 和 nptel 的特定定义

c++ - fatal error LNK1104 : cannot open file

c++ - C++ 中的系统调用问题

c++ - 'WCHAR' 和 'wchar_t' 有什么区别?

java - notify() 和 notifyAll() 在我的 java 代码中不起作用

java - 平滑 Java 绘画动画

c - 在 2d 数组 3x3 幻方中查找重复值

为设备驱动程序创建自己的寄存器

c - 释放结构中的数组后的 SIGABRT

c++ - 为什么使用互斥锁从线程进行奇怪的打印