Compartir a través de


Función ExReleaseResourceForThreadLite (wdm.h)

La rutina ExReleaseResourceForThreadLite libera el recurso de entrada del subproceso indicado.

Sintaxis

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

Parámetros

[in, out] Resource

Puntero al recurso que se va a liberar.

[in] ResourceThreadId

Identifica el subproceso que adquirió originalmente el recurso. Si no es el subproceso que se está ejecutando actualmente, el autor de la llamada debe haber transferido la propiedad del recurso llamando a la rutina ExSetResourceOwnerPointer Ex primero en el subproceso que adquirió originalmente el recurso.

Valor devuelto

Ninguno

Observaciones

Si no es el subproceso que se está ejecutando actualmente, el autor de la llamada debe haber transferido la propiedad del recurso llamando a la rutina ExSetResourceOwnerPointer Ex primero en el subproceso que adquirió originalmente el recurso. Esto es para asegurarse de que el subproceso A no finaliza ni se elimina antes de que el subproceso B tenga la oportunidad de liberar el recurso.

A menos que el autor de la llamada se ejecute en un subproceso del sistema, el autor de la llamada debe deshabilitar explícitamente la entrega de las API de kernel normales antes de llamar a esta rutina. Este requisito impide que los subprocesos se suspendan mientras manipulan o mantienen un recurso. El autor de la llamada puede deshabilitar la entrega normal de APC del kernel llamando a la rutina de KeEnterCriticalRegion. La entrega debe permanecer deshabilitada hasta que se libere el recurso, en cuyo momento se puede volver a habilitar llamando a la rutina KeLeaveCriticalRegion. Para obtener más información, consulte Deshabilitación de las API.

Este requisito no se aplica a las llamadas realizadas a exReleaseResourceForThreadLite desde un subproceso del sistema. Un autor de llamada que se ejecuta en un subproceso del sistema no necesita deshabilitar explícitamente las API antes de llamar a esta rutina.

Requisitos

Requisito Valor
cliente mínimo admitido Disponible a partir de Windows 2000.
de la plataforma de destino de Universal
encabezado de wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
biblioteca de NtosKrnl.lib
DLL de NtosKrnl.exe
irQL <= DISPATCH_LEVEL
reglas de cumplimiento de DDI ExclusiveResourceAccess(wdm), HwStorPortProhibitedDDIs(storport), WithinCriticalRegion(storport), WithinCriticalRegion(storport), WithinCriticalRegion(wdm)

Consulte también

exAcquireResourceExclusiveLite

ExAcquireResourceSharedLite

exAcquireSharedStarveExclusive

exAcquireSharedWaitForExclusive

ExGetCurrentResourceThread

ExInitializeResourceLite

ExReinitializeResourceLite