Condividi tramite


Funzione PshedSynchronizeExecution (ntddk.h)

La funzione PshedSynchronizeExecution sincronizza l'esecuzione di una determinata funzione con l'elaborazione degli errori hardware per un'origine di errore.

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 di errore.

[in] SynchronizeRoutine

Puntatore a una funzione fornita dal chiamante la cui esecuzione viene sincronizzata con l'elaborazione dell'errore hardware per l'origine degli errori descritta dal parametro ErrorSource . Una funzione SyncRoutine viene dichiarata come segue:

BOOLEAN
SynchronizeRoutine(
    _In_ PVOID  SynchronizeContext
    );

SyncContext

Valore di contesto passato nel parametro SyncContext alla funzione PshedSynchronizeExecution .

[in] SynchronizeContext

Puntatore a un'area di contesto fornita dal chiamante passata alla funzione puntata dal parametro SyncRoutine .

Valore restituito

PshedSynchronizeExecution restituisce il valore restituito dalla funzione a cui fa riferimento il parametro SyncRoutine .

Commenti

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. Ciò è necessario ogni volta che un plug-in PSHED condivide le risorse tra il codice che esegue all'esterno del normale flusso di elaborazione degli errori hardware e il codice che viene 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:

  1. IrQL viene generato al IRQL in corrispondenza del quale viene eseguito il gestore di errori hardware di basso livello (LLHEH) per l'origine degli errori.

  2. L'accesso all'area di contesto specificata dal parametro SyncContext viene sincronizzato con LLHEH acquisendo il blocco spin associato.

  3. Viene chiamata la funzione specificata nel parametro SyncRoutine .

I chiamanti della funzione PshedSynchronizeExecution devono essere in esecuzione in IRQL = DIRQL, ovvero minore o uguale a IRQL <in corrispondenza del quale viene eseguita l'origine degli errori.

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Intestazione ntddk.h (include Ntddk.h)
Libreria Pshed.lib
DLL Pshed.dll
IRQL IRQL = DIRQL <

Vedi anche

WHEA_ERROR_SOURCE_DESCRIPTOR