Compartilhar via


Função WdfObjectAcquireLock (wdfsync.h)

[Aplica-se a KMDF e UMDF]

O método WdfObjectAcquireLock adquire o bloqueio de sincronização de um objeto.

Sintaxe

VOID WdfObjectAcquireLock(
  _In_ WDFOBJECT Object
);

Parâmetros

[in] Object

Um identificador para um objeto de dispositivo de estrutura ou um objeto de fila de estrutura.

Valor de retorno

Nenhum

Observações

Uma verificação de bug ocorre se o driver fornece um identificador de objeto inválido.

Um driver pode chamar o método WdfObjectAcquireLock para adquirir o bloqueio de sincronização associado a um objeto de dispositivo de estrutura especificado ou um objeto de fila de estrutura. O método não retorna até que o bloqueio tenha sido adquirido.

Quando o driver não precisa mais do bloqueio de sincronização do objeto, ele deve chamar WdfObjectReleaseLock.

Se o driver especificado WdfExecutionLevelPassive para o ExecutionLevel da estrutura WDF_OBJECT_ATTRIBUTES do objeto especificado, o driver deverá chamar WdfObjectAcquireLock no IRQL <= APC_LEVEL. WdfObjectAcquireLock adquire um mutex rápido e retorna no IRQL do chamador. (Nesse caso, WdfObjectAcquireLock também chama KeEnterCriticalRegion antes de retornar para que APCs de kernel normais sejam desabilitadas.)

Se o driver não especificar WdfExecutionLevelPassive para o membro ExecutionLevel da estrutura de WDF_OBJECT_ATTRIBUTES do objeto especificado, o driver deverá chamar WdfObjectAcquireLock no IRQL <= DISPATCH_LEVEL. WdfObjectAcquireLock adquire um de bloqueio de rotação e retorna em IRQL = DISPATCH_LEVEL.

Para obter mais informações sobre bloqueios de sincronização, consulte Técnicas de Sincronização para drivers de Framework-Based.

Requisitos

Requisito Valor
da Plataforma de Destino Universal
versão mínima do KMDF 1.0
versão mínima do UMDF 2.0
cabeçalho wdfsync.h (inclua Wdf.h)
IRQL Consulte a seção Comentários.
regras de conformidade de DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Consulte também

WDF_OBJECT_ATTRIBUTES

KeEnterCriticalRegion

WdfObjectReleaseLock