Функция ExReleaseResourceForThreadLite (wdm.h)

Подпрограмма ExReleaseResourceForThreadLite освобождает входной ресурс указанного потока.

Синтаксис

void ExReleaseResourceForThreadLite(
  [in, out] PERESOURCE       Resource,
  [in]      ERESOURCE_THREAD ResourceThreadId
);

Параметры

[in, out] Resource

Указатель на освобождающийся ресурс.

[in] ResourceThreadId

Идентифицирует поток, который первоначально приобрел ресурс. Если это не выполняемый в данный момент поток, вызывающий объект должен передать право собственности на ресурс, сначала вызвав подпрограмму ExSetResourceOwnerPointerEx в потоке, который первоначально приобрел ресурс.

Возвращаемое значение

None

Remarks

Если это не выполняемый в данный момент поток, вызывающий объект должен передать право собственности на ресурс, сначала вызвав подпрограмму ExSetResourceOwnerPointerEx в потоке, который первоначально приобрел ресурс. Это необходимо для того, чтобы поток A не был завершен или удален до того, как поток B получит возможность освободить ресурс.

Если вызывающий объект не выполняется в системном потоке, вызывающий объект должен явно отключить доставку обычных APC ядра перед вызовом этой подпрограммы. Это требование предотвращает приостановку потоков при обработке или удержании ресурса. Вызывающий объект может отключить обычную доставку APC ядра, вызвав подпрограмму KeEnterCriticalRegion . Доставка должна оставаться отключенной до тех пор, пока ресурс не будет освобожден. После этого его можно повторно включить, вызвав подпрограмму KeLeaveCriticalRegion . Дополнительные сведения см. в разделе Отключение APC.

Это требование не применяется к вызовам ExReleaseResourceForThreadLite из системного потока. Вызывающему объекту, работающему в системном потоке, не нужно явно отключать APC перед вызовом этой подпрограммы.

Требования

Требование Значение
Минимальная версия клиента Доступно начиная с Windows 2000.
Целевая платформа Универсальное
Верхняя часть wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL
Правила соответствия DDI ExclusiveResourceAccess(wdm), HwStorPortProhibitedDIs(storport), WithinCriticalRegion(storport), WithinCriticalRegion(storport), WithinCriticalRegion(wdm)

См. также раздел

ExAcquireResourceExclusiveLite

ExAcquireResourceSharedLite

ExAcquireSharedStarveExclusive

ExAcquireSharedWaitForExclusive

ExGetCurrentResourceThread

ExInitializeResourceLite

ExReinitializeResourceLite