SRWLock 类
表示精简读取器/编写器锁定。
语法
class SRWLock;
备注
精简读取器/编写器锁定用于同步对某个对象或资源的跨线程的访问。 有关详细信息,请参阅同步函数。
成员
公共 Typedef
名称 | 描述 |
---|---|
SyncLockExclusive |
以独占模式获取的 SRWLock 对象的同义词。 |
SyncLockShared |
以共享模式获取的 SRWLock 对象的同义词。 |
公共构造函数
名称 | 描述 |
---|---|
SRWLock::SRWLock | 初始化 SRWLock 类的新实例。 |
SRWLock::~SRWLock | 取消初始化 SRWLock 类的实例。 |
公共方法
名称 | 描述 |
---|---|
SRWLock::LockExclusive | 以独占模式获取 SRWLock 对象。 |
SRWLock::LockShared | 以共享模式获取 SRWLock 对象。 |
SRWLock::TryLockExclusive | 尝试以独占模式为当前或指定 SRWLock 对象获取 SRWLock 对象。 |
SRWLock::TryLockShared | 尝试以共享模式为当前或指定 SRWLock 对象获取 SRWLock 对象。 |
受保护的数据成员
名称 | 描述 |
---|---|
SRWLock::SRWLock_ | 包含当前 SRWLock 对象的基础锁定变量。 |
继承层次结构
SRWLock
要求
标头:corewrappers.h
命名空间:Microsoft::WRL::Wrappers
SRWLock::~SRWLock
取消初始化 SRWLock
类的实例。
~SRWLock();
SRWLock::LockExclusive
以独占模式获取 SRWLock
对象。
SyncLockExclusive LockExclusive();
static SyncLockExclusive LockExclusive(
_In_ SRWLOCK* lock
);
参数
lock
指向 SRWLock
对象的指针。
返回值
独占模式下的 SRWLock
对象。
SRWLock::LockShared
以共享模式获取 SRWLock
对象。
SyncLockShared LockShared();
static SyncLockShared LockShared(
_In_ SRWLOCK* lock
);
参数
lock
指向 SRWLock
对象的指针。
返回值
共享模式下的 SRWLock
对象。
SRWLock::SRWLock
初始化 SRWLock
类的新实例。
SRWLock();
SRWLock::SRWLock_
包含当前 SRWLock
对象的基础锁定变量。
SRWLOCK SRWLock_;
SRWLock::TryLockExclusive
尝试以独占模式为当前或指定 SRWLock
对象获取 SRWLock
对象。 如果调用成功,调用线程将获取锁定的所有权。
SyncLockExclusive TryLockExclusive();
static SyncLockExclusive TryLockExclusive(
_In_ SRWLOCK* lock
);
参数
lock
指向 SRWLock
对象的指针。
返回值
如果成功,则为独占模式下的 SRWLock
对象,并且调用线程将获得锁定的所有权。 否则为状态无效的 SRWLock
对象。
SRWLock::TryLockShared
尝试以共享模式为当前或指定 SRWLock
对象获取 SRWLock
对象。
WRL_NOTHROW SyncLockShared TryLockShared();
WRL_NOTHROW static SyncLockShared TryLockShared(
_In_ SRWLOCK* lock
);
参数
lock
指向 SRWLock
对象的指针。
返回值
如果成功,则为共享模式下的 SRWLock
对象,并且调用线程将获得锁定的所有权。 否则为状态无效的 SRWLock
对象。