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 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:

  1. 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.

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

  3. 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

Vedere anche

WHEA_ERROR_SOURCE_DESCRIPTOR