CMsgThread.WaitForThreadExit 方法

[与此页面关联的功能 DirectShow 是旧版功能。 它已被 MediaPlayerIMFMediaEngineMedia Foundation 中的音频/视频捕获所取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能在 Media Foundation 中使用 MediaPlayerIMFMediaEngine音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]

阻止,直到线程退出。

语法

BOOL WaitForThreadExit(
   LPDWORD lpdwExitCode
);

参数

lpdwExitCode

指向线程返回的退出代码的指针。

返回值

返回 TRUEFALSE,其含义由提供重写的 CMsgThread::ThreadMessageProc 成员函数和调用成员函数的类确定。

备注

在完成对派生类的销毁之前,请确保工作线程已完全退出;否则,在从进程的地址空间中卸载动态链接库 (DLL) 后,线程可能仍会执行。 即使唯一要退出的指令是单返回指令,也会导致异常。 确保线程已退出的唯一可靠方法是使用发送到 (CMsgThread::P utThreadMsg 成员函数) 的私下协商的 CMsg 对象发出信号,然后调用此成员函数。 应在派生类的析构函数中执行此操作。

要求

要求
标头
Msgthrd.h (包括 Streams.h)

Strmbase.lib (零售版本) ;
Strmbasd.lib (调试生成)

另请参阅

CMsgThread 类