Função WdfDmaTransactionSetImmediateExecution (wdfdmatransaction.h)
[Aplica-se somente ao KMDF]
O método WdfDmaTransactionSetImmediateExecution marca a transação de DMA especificada para que as chamadas para WdfDmaTransactionExecute e WdfDmaTransactionAllocateResources iniciem a transação imediatamente ou falhem.
Sintaxe
void WdfDmaTransactionSetImmediateExecution(
[in] WDFDMATRANSACTION DmaTransaction,
[in] BOOLEAN UseImmediateExecution
);
Parâmetros
[in] DmaTransaction
Um identificador para um objeto de transação DMA a ser marcado para execução imediata.
[in] UseImmediateExecution
Um valor booliano que, se TRUE, indica que a transação deve ser executada imediatamente (ou falhar se os recursos não estiverem disponíveis) e, se FALSE, indicar que a transação deve ser enfileirada para execução quando os recursos de DMA estiverem disponíveis.
Retornar valor
Nenhum
Comentários
Antes de chamar WdfDmaTransactionSetImmediateExecution, o driver deve inicializar a transação.
Se o driver chamar WdfDmaTransactionExecute ou WdfDmaTransactionAllocateResources depois de chamar WdfDmaTransactionSetImmediateExecution com UseImmediateExecution definido como TRUE e os recursos necessários para a solicitação não estiverem disponíveis, esse método retornará STATUS_INSUFFICIENT_RESOURCES. Se os recursos necessários estiverem disponíveis, a estrutura os declara e inicia a chamada de forma síncrona.
Depois que o driver marca uma transação para execução imediata, a transação permanece marcada como tal até que o driver chame WdfDmaTransactionRelease ou limpe o sinalizador chamando WdfDmaTransactionSetImmediateExecution com UseImmediateExecution definido como FALSE.
WdfDmaTransactionSetImmediateExecution requer dma versão 3. Para selecionar o DMA versão 3, defina o membro WdmDmaVersionOverride de WDF_DMA_ENABLER_CONFIG como 3.
Se o driver chamar esse método em um sistema operacional anterior a Windows 8, o verificador da estrutura relatará um erro.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 8 |
Plataforma de Destino | Universal |
Versão mínima do KMDF | 1.11 |
Cabeçalho | wdfdmatransaction.h (inclua Wdf.h) |
Biblioteca | Wdf01000.sys (consulte Controle de versão da biblioteca de estrutura.) |
IRQL | <=DISPATCH_LEVEL |
Regras de conformidade de DDI | DriverCreate(kmdf) |