ExAcquireRundownProtectionEx 函数 (wdm.h)
ExAcquireRundownProtectionEx 例程尝试获取共享对象的运行保护,以便调用方可以安全地访问该对象。
语法
BOOLEAN ExAcquireRundownProtectionEx(
[in, out] PEX_RUNDOWN_REF RunRef,
[in] ULONG Count
);
参数
[in, out] RunRef
指向先前调用 ExInitializeRundownProtection 例程初始化的 EX_RUNDOWN_REF 结构的指针。 运行保护例程使用此结构来跟踪关联的共享对象的运行状态。 此结构对驱动程序不透明。
[in] Count
要递增到对象的运行实例计数的量。 仅当例程返回 TRUE时,计数才会递增。 有关详细信息,请参阅“备注”
返回值
ExAcquireRundownProtectionEx 如果例程成功获取调用方运行保护,则返回 true true。 否则,它将返回 FALSE。 FALSE 的返回值 指示对象的运行已启动,并且该对象必须被视为无效。
言论
为了安全地访问共享对象,驱动程序调用 ExAcquireRundownProtectionEx 以获取对象的运行保护。
RunRef 参数指向跟踪关联对象的运行状态的 EX_RUNDOWN_REF 结构。 此状态信息包括当前对对象有效的运行保护实例计数。 ExAcquireRundownProtectionEx 和 ExReleaseRundownProtectionEx 例程递增并按任意数量递减此计数。 两个相关的例程,ExAcquireRundownProtection 和 ExReleaseRundownProtection,递增并递减此计数一个。
只要运行块本身是非分页的,就可以在DISPATCH_LEVEL调用此函数。
有关详细信息,请参阅 Run-Down 保护。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | 从 Windows Server 2003 开始可用。 |
目标平台 | 普遍 |
标头 | wdm.h (包括 Wdm.h) |
库 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL (请参阅备注) |
DDI 符合性规则 | HwStorPortProhibitedDIS(storport) |