Função ExAcquireSpinLockSharedAtDpcLevel (wdm.h)
A rotina exAcquireSpinLockSharedAtDpcLevel adquire um de bloqueio de rotação para acesso compartilhado por um chamador que já está em execução no IRQL >= DISPATCH_LEVEL.
Sintaxe
void ExAcquireSpinLockSharedAtDpcLevel(
PEX_SPIN_LOCK SpinLock
);
Parâmetros
SpinLock
[dentro, fora] Um ponteiro para o bloqueio de rotação a ser adquirido para acesso compartilhado. O chamador ainda não deve ter esse bloqueio de rotação.
Valor de retorno
Nenhum
Observações
Ao entrar nessa rotina, o chamador deve estar em execução no IRQL >= DISPATCH_LEVEL. Essa rotina não altera o IRQL.
Para liberar o bloqueio de rotação, o driver chama a rotinaExReleaseSpinLockSharedFromDpcLevel.
Um bloqueio de rotação é uma variável de 32 bits do tipo EX_SPIN_LOCK. O driver deve alocar o armazenamento para o bloqueio de rotação e inicializar o bloqueio de rotação como zero. Esse armazenamento deve estar localizado na memória de espaço do sistema nãopagada.
O chamador deve manter o bloqueio de rotação apenas brevemente antes de liberá-lo. Para obter mais informações, consulte Introdução aos bloqueios de rotação.
A aquisição recursiva de um bloqueio de rotação causa deadlock e não é permitida.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows Vista SP1 |
cabeçalho | wdm.h |
IRQL | IRQL >= DISPATCH_LEVEL |