Função StorPortIssueDpc (storport.h)
A rotina StorPortIssueDpc emite uma DPC (chamada de procedimento adiado).
Sintaxe
BOOLEAN StorPortIssueDpc(
[in] PVOID DeviceExtension,
[in] PSTOR_DPC Dpc,
[in] PVOID SystemArgument1,
[in] PVOID SystemArgument2
);
Parâmetros
[in] DeviceExtension
Ponteiro para a extensão de dispositivo por adaptador.
[in] Dpc
Ponteiro para um buffer que contém um objeto DPC inicializado do tipo STOR_DPC retornado pela rotina de StorPortInitializeDpc.
[in] SystemArgument1
Ponteiro para informações fornecidas pelo chamador que serão passadas para a rotina adiada.
[in] SystemArgument2
Ponteiro para informações fornecidas pelo chamador que serão passadas para a rotina adiada.
Valor de retorno
A rotina StorPortIssueDpc retorna verdadeiro se o DPC foi inserido com êxito na fila DPC e FALSE caso contrário.
Observações
A rotina de StorPortIssueDpc chama a rotina de kernel KeInsertQueueDpc para enfileirar o DPC. A rotina de kernel KeInsertQueueDpc não permite que um DPC seja enfileirado várias vezes. Portanto, se o objeto DPC especificado pelo parâmetro Dpc já estiver na fila DPC, KeInsertQueueDpc ignorará a solicitação de fila. Isso garante que uma rotina adiada inicializada com StorPortInitializeDpc seja sempre sincronizada consigo mesma. Em outras palavras, o chamador não precisa sequencializar chamadas para a rotina StorPortIssueDpc para garantir que várias instâncias da rotina não sejam executadas simultaneamente.
Se um driver de miniporto tiver vários itens de trabalho que devem ser executados pelo mesmo DPC, o driver de miniporto deverá garantir que cada item de trabalho seja concluído antes de emitir o DPC para o próximo item de trabalho.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Universal |
cabeçalho | storport.h (inclua Storport.h) |