CMsgThread.PutThreadMsg 方法
[与此页面关联的功能 DirectShow 是旧版功能。 它已被 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获所取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能在 Media Foundation 中使用 MediaPlayer、 IMFMediaEngine 和 音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
将工作线程执行的请求排队。
语法
void PutThreadMsg(
UINT uMsg,
DWORD dwMsgFlags,
LPVOID lpMsgParam,
CAMEvent *pEvent = NULL
);
参数
-
uMsg
-
请求代码。
-
dwMsgFlags
-
可选标志参数。
-
lpMsgParam
-
指向包含其他参数或返回值的数据块的可选指针。 必须静态或堆分配,而不是自动分配。
-
pEvent
-
指向在完成时要发出信号的事件对象的可选指针。
返回值
此方法不返回值。
备注
此成员函数将工作线程执行的请求排队。 此成员函数的参数将排队 (CMsg 对象) ,并传递给工作线程的 CMsgThread::ThreadMessageProc 成员函数。 此成员函数在请求排队后立即返回,并且不会等待线程满足请求。 派生类的 CMsgThread::ThreadMessageProc 成员函数定义四个参数。
此成员函数使用多线程安全列表,因此可以安全地从不同线程对此成员函数进行多次调用。
要求
要求 | 值 |
---|---|
标头 |
|
库 |
|