Compartir a través de


Método IWDFInterrupt::TryToAcquireInterruptLock (wudfddi.h)

[Advertencia: UMDF 2 es la versión más reciente de UMDF y sustituye a UMDF 1. Todos los nuevos controladores UMDF deben escribirse mediante UMDF 2. No se agregan nuevas características a UMDF 1 y hay compatibilidad limitada con UMDF 1 en versiones más recientes de Windows 10. Los controladores universales de Windows deben usar UMDF 2. Para obtener más información, consulta Introducción a UMDF.]

El método TryToAcquireInterruptLock adquiere el bloqueo de interrupción si ningún otro subproceso ya lo ha adquirido.

Sintaxis

BOOLEAN TryToAcquireInterruptLock();

Valor devuelto

El método devuelve TRUE si el bloqueo de interrupción se adquirió correctamente. De lo contrario, el método devuelve FALSE.

Observaciones

A diferencia de IWDFInterrupt::AcquireInterruptLock, IWDFInterrupt::TryToAcquireInterruptLock no espera a que el bloqueo de interrupción esté disponible si otro subproceso lo contiene.

Cuando se ejecuta en un subproceso arbitrario, como un método de devolución de llamada de cola de E/S, los controladores deben llamar a IWDFInterrupt::TryToAcquireInterruptLock en lugar de IWDFInterrupt::AcquireInterruptLock. Por ejemplo, el controlador llama a IWDFInterrupt::TryToAcquireInterruptLock desde IQueueCallbackRead::OnRead. Al hacerlo, se evita la posibilidad de interbloqueo, como se describe en la sección Comentarios de IWDFInterrupt::AcquireInterruptLock.

El controlador no debe intentar adquirir el bloqueo de forma recursiva. Si está conectado al depurador, el marco presenta un punto de interrupción en este escenario.

Para obtener más información sobre el bloqueo manual de interrupciones, consulte Sincronización del código de interrupción.

Para obtener más información sobre cómo controlar las interrupciones en los controladores UMDF, consulte acceso a hardware y control de interrupciones.

Requisitos

Requisito Valor
fin del soporte técnico No disponible en UMDF 2.0 y versiones posteriores.
de la plataforma de destino de Escritorio
versión mínima de UMDF 1.11
encabezado de wudfddi.h
DLL de WUDFx.dll

Consulte también

IWDFInterrupt

IWDFInterrupt::AcquireInterruptLock

WdfInterruptTryToAcquireLock