Regla DoubleCompletion (kmdf)

La regla DoubleCompletion especifica que los controladores no deben completar una solicitud de E/S dos veces. No se debe llamar a los métodos siguientes dos veces en una fila para la misma solicitud: WdfRequestComplete, WdfRequestCompleteWithInformation, WdfRequestCompleteWithPriorityBoost.

La diferencia entre esta regla y la regla DoubleCompletionLocal es que la regla DoubleCompletionLocal solo se realiza dentro de las funciones de devolución de llamada de cola de E/S predeterminadas.

Modelo de controlador: KMDF

Cómo probar

En tiempo de compilación

Ejecute el Comprobador de controladores estáticos y especifique la regla DoubleCompletion .

Usa los pasos siguientes para ejecutar un análisis de tu código:
  1. Prepara el código (usa declaraciones de tipos de rol).
  2. Ejecuta el comprobador de controlador estático.
  3. Consulta y analiza los resultados.

Para obtener más información, vea Usar comprobador de controladores estáticos para buscar defectos en controladores.

Se aplica a

WdfIoQueueRetrieveFoundRequestWdfIoQueueRetrieveNextRequestWdfIoQueueRetrieveRequestByFileObjectWdfRequestCompleteWdfRequestCompleteWithInformationWdfRequestCompleteWithPriorityBoost