Partilhar via


Função ExReleaseResourceForThreadLite (wdm.h)

O ExReleaseResourceForThreadLite libera o recurso de entrada do thread indicado.

Sintaxe

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

Parâmetros

[in, out] Resource

Um ponteiro para o recurso a ser liberado.

[in] ResourceThreadId

Identifica o thread que originalmente adquiriu o recurso. Se esse não for o thread em execução no momento, o chamador deverá ter transferido a propriedade do recurso chamando a rotina ExSetResourceOwnerPointerEx primeiro no thread que originalmente adquiriu o recurso.

Valor de retorno

Nenhum

Observações

Se esse não for o thread em execução no momento, o chamador deverá ter transferido a propriedade do recurso chamando a rotina ExSetResourceOwnerPointerEx primeiro no thread que originalmente adquiriu o recurso. Isso é para garantir que o thread A não seja encerrado ou excluído antes que o thread B tenha a chance de liberar o recurso.

A menos que o chamador esteja em execução em um thread do sistema, o chamador deve desabilitar explicitamente a entrega de APCs de kernel normais antes de chamar essa rotina. Esse requisito impede que os threads sejam suspensos enquanto manipulam ou mantêm um recurso. O chamador pode desabilitar a entrega normal do APC do kernel chamando a rotina KeEnterCriticalRegion. A entrega deve permanecer desabilitada até que o recurso seja liberado, momento em que ele pode ser reenabled chamando a rotina KeLeaveCriticalRegion. Para obter mais informações, consulte Desabilitando APCs.

Esse requisito não se aplica a chamadas feitas para ExReleaseResourceForThreadLite de um thread do sistema. Um chamador em execução em um thread do sistema não precisa desabilitar explicitamente as APCs antes de chamar essa rotina.

Requisitos

Requisito Valor
de cliente com suporte mínimo Disponível a partir do Windows 2000.
da Plataforma de Destino Universal
cabeçalho wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
biblioteca NtosKrnl.lib
de DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL
regras de conformidade de DDI ExclusiveResourceAccess(wdm), HwStorPortProhibitedDIs(storport), WithinCriticalRegion(storport), WithinCriticalRegion(storport), WithinCriticalRegion(wdm)

Consulte também

ExAcquireResourceExclusiveLite

ExAcquireResourceSharedLite

ExAcquireSharedStarveExclusive

ExAcquireSharedWaitForExclusive

ExGetCurrentResourceThread

ExInitializeResourceLite

ExReinitializeResourceLite