Funzione PshedSynchronizeExecution (ntddk.h)
La funzione PshedSynchronizeExecution sincronizza l'esecuzione di una determinata funzione con l'elaborazione degli errori hardware per un'origine degli errori.
Sintassi
NTPSHEDAPI BOOLEAN PshedSynchronizeExecution(
[in] PWHEA_ERROR_SOURCE_DESCRIPTOR ErrorSource,
[in] PKSYNCHRONIZE_ROUTINE SynchronizeRoutine,
[in] PVOID SynchronizeContext
);
Parametri
[in] ErrorSource
Puntatore a una struttura WHEA_ERROR_SOURCE_DESCRIPTOR che descrive un'origine degli errori.
[in] SynchronizeRoutine
Puntatore a una funzione fornita dal chiamante la cui esecuzione viene sincronizzata con l'elaborazione degli errori hardware per l'origine degli errori descritta dal parametro ErrorSource. Una funzione SynchronizeRoutine viene dichiarata come segue:
BOOLEAN
SynchronizeRoutine(
_In_ PVOID SynchronizeContext
);
SynchronizeContext
Valore di contesto passato nel parametro SynchronizeContext al PshedSynchronizeExecution.
[in] SynchronizeContext
Puntatore a un'area di contesto fornita dal chiamante passata alla funzione a cui punta il parametro SynchronizeRoutine.
Valore restituito
PshedSynchronizeExecution restituisce il valore restituito dalla funzione a cui punta il parametro SynchronizeRoutine.
Osservazioni
Un plug-in PSHED chiama la funzione PshedSynchronizeExecution per sincronizzare l'esecuzione di una determinata funzione con l'elaborazione degli errori hardware per un'origine di errore. Questa operazione è necessaria ogni volta che un plug-in PSHED condivide le risorse tra il codice eseguito all'esterno del normale flusso di elaborazione degli errori hardware e il codice eseguito come parte del normale flusso di elaborazione degli errori hardware. Per altre informazioni sull'elaborazione degli errori hardware, vedere 'elaborazione degli errori.
Quando questa funzione viene chiamata, si verifica quanto segue:
Il runtime di integrazione viene generato all'IRQL in cui viene eseguito il gestore di errori hardware di basso livello (LLHEH) per l'origine degli errori.
L'accesso all'area di contesto specificata dal parametro SynchronizeContext viene sincronizzato con LLHEH acquisendo il blocco di selezione associato.
Viene chiamata la funzione specificata nel parametro SynchronizeRoutine.
I chiamanti del PshedSynchronizeExecution funzione devono essere in esecuzione in IRQL <= DIRQL, ovvero minore o uguale a IRQL in cui viene eseguito LLHEH per l'origine dell'errore.
Fabbisogno
Requisito | Valore |
---|---|
piattaforma di destinazione | Universale |
intestazione | ntddk.h (include Ntddk.h) |
libreria | Pshed.lib |
dll | Pshed.dll |
IRQL | IRQL <= DIRQL |