Função PshedSynchronizeExecution (ntddk.h)
A função PshedSynchronizeExecution sincroniza a execução de uma determinada função com o processamento de erro de hardware para uma fonte de erro.
Sintaxe
NTPSHEDAPI BOOLEAN PshedSynchronizeExecution(
[in] PWHEA_ERROR_SOURCE_DESCRIPTOR ErrorSource,
[in] PKSYNCHRONIZE_ROUTINE SynchronizeRoutine,
[in] PVOID SynchronizeContext
);
Parâmetros
[in] ErrorSource
Um ponteiro para uma estrutura WHEA_ERROR_SOURCE_DESCRIPTOR que descreve uma fonte de erro.
[in] SynchronizeRoutine
Um ponteiro para uma função fornecida pelo chamador cuja execução é sincronizada com o processamento de erro de hardware para a fonte de erro descrita pelo parâmetro ErrorSource. Uma função SynchronizeRoutine é declarada da seguinte maneira:
BOOLEAN
SynchronizeRoutine(
_In_ PVOID SynchronizeContext
);
SynchronizeContext
O valor de contexto passado no parâmetro SynchronizeContext para a função PshedSynchronizeExecution.
[in] SynchronizeContext
Um ponteiro para uma área de contexto fornecida pelo chamador que é passada para a função apontada pelo parâmetro SynchronizeRoutine.
Valor de retorno
PshedSynchronizeExecution retorna o valor retornado pela função apontada pelo parâmetro SynchronizeRoutine.
Observações
Um plug-in PSHED chama a função PshedSynchronizeExecution para sincronizar a execução de uma determinada função com o processamento de erro de hardware para uma fonte de erro. Isso é necessário sempre que um plug-in PSHED compartilha recursos entre o código que é executado fora do fluxo de processamento de erro de hardware normal e do código que é executado como parte do fluxo normal de processamento de erros de hardware. Para obter mais informações sobre o processamento de erros de hardware, consulte de Processamento de Erros.
Quando essa função é chamada, ocorre o seguinte:
O IRQL é gerado para o IRQL no qual o LLHEH (manipulador de erros de hardware) de baixo nível para a origem do erro é executado.
O acesso à área de contexto especificada pelo parâmetro SynchronizeContext é sincronizado com o LLHEH adquirindo o bloqueio de rotação associado.
A função especificada no parâmetro SynchronizeRoutine é chamada.
Os chamadores da função PshedSynchronizeExecution devem estar em execução no IRQL <= DIRQL, ou seja, menor ou igual ao IRQL no qual o LLHEH da fonte de erro é executado.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Universal |
cabeçalho | ntddk.h (inclua Ntddk.h) |
biblioteca | Pshed.lib |
de DLL | Pshed.dll |
IRQL | IRQL <= DIRQL |