KeAreApcsDisabled function (ntddk.h)

The KeAreApcsDisabled routine returns whether the calling thread is within a critical region, which disables normal kernel APC delivery, or a guarded region, which disables all kernel APC delivery.

Syntax

BOOLEAN KeAreApcsDisabled();

Return value

KeAreApcsDisabled returns TRUE if the thread is within a critical region or a guarded region, and FALSE otherwise.

Remarks

A thread running at IRQL = PASSIVE_LEVEL can use KeAreApcsDisabled to determine if normal kernel APCs are disabled. A thread that is inside a critical region has both user APCs and normal kernel APCs disabled, but not special kernel APCs. A thread that is inside a guarded region has all APCs disabled, including special kernel APCs.

Requirements

Requirement Value
Minimum supported client Available in Windows XP and later versions of Windows.
Target Platform Universal
Header ntddk.h (include Wdm.h, Ntddk.h, Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL
DDI compliance rules HwStorPortProhibitedDDIs(storport)

See also

KeAreAllApcsDisabled

KeEnterCriticalRegion

KeLeaveCriticalRegion