VOID
ExReinitializeResourceLite(
IN PERESOURCE Resource
)
ExReinitializeResourceLite reinitializes an existing resource variable.
ExReinitializeResourceLite returns STATUS_SUCCESS.
With a single call to ExReinitializeResource, a driver writer can replace three calls: one to ExDeleteResourceLite, another to ExAllocatePool, and a third to ExInitializeResourceLite. As contention for a resource variable increases, memory is dynamically allocated and attached to the resource in order to track this contention. As an optimization, ExReinitializeResourceLite retains and zeroes this previously allocated memory.
The ERESOURCE structure is opaque: that is, the members are reserved for system use.
Callers of ExReinitializeResourceLite must be running at IRQL <= DISPATCH_LEVEL.
ExAcquireResourceExclusiveLite, ExAcquireResourceSharedLite, ExInitializeResourceLite, ExDeleteResourceLite, ExAcquireSharedStarveExclusive, ExAcquireSharedWaitForExclusive, ExConvertExclusiveToSharedLite, ExIsResourceAcquiredExclusiveLite, ExIsResourceAcquiredSharedLite, ExReleaseResourceForThreadLite, ExTryToAcquireResourceExclusiveLite