NdisReleaseRWLock 函数 (ndis.h)

NdisReleaseRWLock 函数释放调用方用来访问驱动程序线程之间共享的资源的读/写锁。

语法

void NdisReleaseRWLock(
  [in] PNDIS_RW_LOCK_EX Lock,
  [in] PLOCK_STATE_EX   LockState
);

参数

[in] Lock

指向表示锁的不透明 NDIS_RW_LOCK_EX 变量的指针。 调用方可以使用此锁来获取对非 ISR 驱动程序线程之间共享的资源的写入或读取访问权限。

[in] LockState

指向跟踪锁状态的不透明 LOCK_STATE_EX 变量的指针。 此变量存在于调用方获取和释放锁的时间间隔内。 调用方必须对尝试从同一非 ISR 驱动程序线程获取锁的每个尝试使用不同的类型LOCK_STATE_EX变量。

返回值

没有

言论

NDIS 驱动程序调用 NdisReleaseRWLock 函数,以释放以前通过调用
NdisAcquireRWLockRead NdisAcquireRWLockWrite 函数。

驱动程序必须获取读/写锁,然后驱动程序才能调用 NdisReleaseRWLock。 获取锁的每个调用都需要对 NdisReleaseRWLock调用。

获取 NDIS_RW_LOCK_EX 与当前处理器关联。 驱动程序必须在对 NdisAcquireRWLockReadNdisAcquireRWLockWrite进行相应调用的同一处理器上调用 NdisReleaseRWLock

NdisReleaseRWLock 还原其调用方在获取锁之前使用的原始 IRQL。

要求

要求 价值
最低支持的客户端 NDIS 6.20 及更高版本中受支持。
目标平台 普遍
标头 ndis.h (包括 Ndis.h)
Ndis.lib
IRQL DISPATCH_LEVEL

另请参阅

LOCK_STATE_EX

NDIS_RW_LOCK_EX

NdisAcquireRWLockRead

NdisAcquireRWLockWrite