CAutoLock 类

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

CAutoLock 包含代码块范围的关键部分。

此类与 CCritSec 类结合使用,CCritSec 类是关键节对象的包装器。 构造 CAutoLock 函数锁定关键部分,析构函数将其解锁。 通过使用 CAutoLock 对象作为局部变量,可以锁定关键节,并保证所有代码路径都将解锁关键节。

下面的代码示例演示如何使用此类:

CCritSec csMyLock;  // Critical section is not locked yet.
{
    CAutoLock cObjectLock(&csMyLock);  // Lock the critical section.

    // Protected section of code.     

} // Lock goes out of scope here.

此类中的方法不会被设计为重写。

受保护的成员变量 说明
m_pLock 此锁的关键部分。
公共方法 说明
CAutoLock 构造函数方法。 锁定指定的关键节对象。
~CAutoLock 析构函数方法。 解锁关键节对象。

要求

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

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