Função IoAcquireCancelSpinLock (wdm.h)

A rotina IoAcquireCancelSpinLock sincroniza transições de estado cancelável para IRPs de maneira segura para vários processadores.

Sintaxe

void IoAcquireCancelSpinLock(
  PKIRQL Irql
);

Parâmetros

Irql

[out] Ponteiro para uma variável na qual salvar o IRQL atual para uma chamada subsequente para IoReleaseCancelSpinLock. Normalmente, o Irql é salvo na pilha como uma variável local.

Retornar valor

Nenhum

Comentários

Um driver que usa as filas de dispositivo fornecidas pelo gerenciador de E/S no objeto do dispositivo deve estar mantendo o bloqueio de rotação de cancelamento sempre que alterar o estado cancelável de um IRP com IoSetCancelRoutine.

Um driver que gerencia sua própria fila IRP não precisa manter o bloqueio de rotação de cancelamento ao chamar IoSetCancelRoutine.

O detentor do bloqueio de rotação de cancelamento deve liberá-lo imediatamente chamando IoReleaseCancelSpinLock.

Uma rotina cancelar fornecida pelo driver é chamada com o bloqueio de rotação de cancelamento mantido. Ele deve liberar o bloqueio de rotação de cancelamento quando tiver concluído o IRP a ser cancelado.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000
Cabeçalho wdm.h
IRQL <=DISPATCH_LEVEL
Regras de conformidade de DDI CancelSpinLock(storport), CancelSpinLock(wdm), CancelSpinlockRelease(wdm), HwStorPortProhibitedDIs(storport), SpinLockSafe(storport), SpinLockSafe(wdm)

Confira também

IoReleaseCancelSpinLock

IoSetCancelRoutine