c++ 创建线程用CreateThread后,线程直接就开始执行了吗


//CreateThread函数的参数原型如下
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
  );

(1)CREATE_SUSPENDED(0x00000004):创建一个挂起的线程,这时候你需要调用resumethread()函数来手段将其释放,才能执行线程
(2)0:表示创建后立即激活。 这时候创建的线程会马上进入到任务等待队列,等待执行。

 同理CreateProcess也是类似的,不过它的取值类型更多,网上没有介绍dwCreationFlags为0的情况,估计和线程一样的。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM