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 origem do erro descrita pelo parâmetro ErrorSource . Uma função SynchronizeRoutine é declarada da seguinte maneira:
BOOLEAN
SynchronizeRoutine(
_In_ PVOID SynchronizeContext
);
SynchronizeContext
O valor de contexto que é 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 .
Retornar valor
PshedSynchronizeExecution retorna o valor retornado pela função apontada pelo parâmetro SynchronizeRoutine .
Comentários
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 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 em IRQL <= DIRQL, ou seja, menor ou igual ao IRQL no qual o LLHEH da origem do erro é executado.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Universal |
Cabeçalho | ntddk.h (inclua Ntddk.h) |
Biblioteca | Pshed.lib |
DLL | Pshed.dll |
IRQL | IRQL <= DIRQL |