IWDFInterrupt::TryToAcquireInterruptLock 메서드(wudfddi.h)

[경고: UMDF 2는 UMDF의 최신 버전이며 UMDF 1을 대체합니다. 모든 새 UMDF 드라이버는 UMDF 2를 사용하여 작성해야 합니다. UMDF 1에 새 기능이 추가되지 않으며 최신 버전의 Windows 10 UMDF 1에 대한 지원이 제한됩니다. 유니버설 Windows 드라이버는 UMDF 2를 사용해야 합니다. 자세한 내용은 UMDF를 사용하여 시작 참조하세요.]

TryToAcquireInterruptLock 메서드는 다른 스레드가 이미 인수하지 않은 경우 인터럽트 잠금을 획득합니다.

구문

BOOLEAN TryToAcquireInterruptLock();

반환 값

인터럽트 잠금을 성공적으로 획득하면 메서드가 TRUE를 반환합니다. 그렇지 않으면 메서드가 FALSE를 반환합니다.

설명

IWDFInterrupt::AcquireInterruptLock과 달리 IWDFInterrupt::TryToAcquireInterruptLock은 다른 스레드에서 인터럽트 잠금을 보유하는 경우 인터럽트 잠금을 사용할 수 있게 될 때까지 기다리지 않습니다.

I/O 큐 콜백 메서드와 같은 임의의 스레드에서 실행하는 경우 드라이버는 IWDFInterrupt::AcquireInterruptLock 대신 IWDFInterrupt::TryToAcquireInterruptLock을 호출해야 합니다. 예를 들어 드라이버는 IQueueCallbackRead::OnRead에서 IWDFInterrupt::TryToAcquireInterruptLock을 호출합니다. 이렇게 하면 IWDFInterrupt::AcquireInterruptLock의 설명 섹션에 설명된 대로 교착 상태가 발생하지 않습니다.

드라이버는 잠금을 재귀적으로 획득하려고 시도해서는 안 됩니다. 디버거에 연결된 경우 프레임워크는 이 시나리오에서 중단점을 도입합니다.

수동 인터럽트 잠금에 대한 자세한 내용은 인터럽트 코드 동기화를 참조하세요.

UMDF 드라이버에서 인터럽트 처리에 대한 자세한 내용은 하드웨어 액세스 및 인터럽트 처리를 참조하세요.

요구 사항

요구 사항
지원 종료 UMDF 2.0 이상에서는 사용할 수 없습니다.
대상 플랫폼 데스크톱
최소 UMDF 버전 1.11
머리글 wudfddi.h
DLL WUDFx.dll

추가 정보

IWDFInterrupt

IWDFInterrupt::AcquireInterruptLock

WdfInterruptTryToAcquireLock