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将关联到当前处理器。 驱动程序必须在对 NdisAcquireRWLockRead 或 NdisAcquireRWLockWrite 进行相应调用的同一处理器上调用 NdisReleaseRWLock。
NdisReleaseRWLock 还原其调用方在获取锁之前使用的原始 IRQL。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 在 NDIS 6.20 及更高版本中受支持。 |
目标平台 | 通用 |
标头 | ndis.h (包括 Ndis.h) |
Library | Ndis.lib |
IRQL | DISPATCH_LEVEL |