IoAcquireCancelSpinLock 함수(wdm.h)
IoAcquireCancelSpinLock 루틴은 다중 프로세서로부터 안전한 방식으로 IRP에 대한 취소 가능한 상태 전환을 동기화합니다.
통사론
void IoAcquireCancelSpinLock(
PKIRQL Irql
);
매개 변수
Irql
[out] IoReleaseCancelSpinLock대한 후속 호출을 위해 현재 IRQL을 저장할 변수에 대한 포인터입니다. 일반적으로 Irql 스택에 로컬 변수로 저장됩니다.
반환 값
없음
발언
디바이스 개체에서 I/O 관리자가 제공한 디바이스 큐를 사용하는 드라이버는 IoSetCancelRoutine사용하여 IRP의 취소 가능 상태를 변경할 때마다 취소 스핀 잠금을 유지해야 합니다.
자체 IRP 큐를 관리하는 드라이버는 IoSetCancelRoutine호출할 때 취소 스핀 잠금을 유지할 필요가 없습니다.
취소 스핀 잠금의 소유자는 IoReleaseCancelSpinLock호출하여 즉시 해제해야 합니다.
드라이버 제공 취소 루틴은 취소 스핀 잠금이 유지된 상태에서 호출됩니다. 취소할 IRP를 완료한 경우 취소 스핀 잠금을 해제해야 합니다.
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 |
헤더 | wdm.h |
IRQL | <=DISPATCH_LEVEL |
DDI 규정 준수 규칙 | CancelSpinLock(storport), CancelSpinLock(wdm), CancelSpinlockRelease(wdm), H storport(storport), SpinLockSafe(storport), SpinLockSafe(wdm) |