Metodo IWbemRefresher::Refresh (wbemcli.h)

Il metodo IWbemRefresher::Refresh aggiorna tutti gli oggetti aggiornabili, gli enumeratori e gli aggiornamenti annidati. L'aggiornamento WMI chiama questa funzione in risposta a una richiesta client a Refresh.

Sintassi

HRESULT Refresh(
  [in] long lFlags
);

Parametri

[in] lFlags

Maschera di bit di flag che modificano il comportamento di questo metodo.

Se viene specificato WBEM_FLAG_REFRESH_AUTO_RECONNECT e se la connessione viene interrotta, l'aggiornamento tenta di riconnettersi automaticamente al provider. Questo è il comportamento predefinito per questo metodo.

Se non si vuole che l'aggiornamento tenti di riconnettersi al provider, specificare WBEM_FLAG_REFRESH_NO_AUTO_RECONNECT.

Valore restituito

Questo metodo restituisce un valore HRESULT che indica lo stato della chiamata al metodo. L'elenco seguente elenca il valore contenuto in hrESULT.

Commenti

Quando si aggiornano enumeratori e oggetti, i provider devono richiedere il minor tempo possibile. L'uso dei metodi IWbemObjectAccess e degli handle delle proprietà di memorizzazione nella cache per il riutilizzo può migliorare notevolmente le prestazioni. Quando si aggiornano gli enumeratori, un provider può rimuovere e creare nuovamente un'istanza di tutti gli oggetti oppure semplicemente rimuovere e aggiungere le istanze modificate. Spetta a voi scegliere l'approccio migliore. In entrambi i casi, le istanze di memorizzazione nella cache possono migliorare le prestazioni.

Il provider deve accedere solo agli oggetti e agli enumeratori in un aggiornamento in risposta a una chiamata a IWbemRefresher::Refresh. Tuttavia, sarebbe perfettamente valido disporre di un polling di thread in background per i dati con cui riempire questi oggetti, per prepararsi quando viene chiamato Refresh .

Esempio

Nell'esempio di codice seguente viene descritto come implementare Refresh.

HRESULT CMyHiPerfProviderRefresher::Refresh(
/* [in] */long lFlags
)
{
  // Run through all the objects and update their
  // data.

  // Now run through the enumerators.
  // Empty the enumerator and refill it.
   

  return WBEM_S_NO_ERROR;
}

Requisiti

Requisito Valore
Client minimo supportato Windows Vista
Server minimo supportato Windows Server 2008
Piattaforma di destinazione Windows
Intestazione wbemcli.h (include Wbemidl.h)
Libreria Wbemuuid.lib

Vedi anche

Sviluppo di un provider WMI

IWbemHiPerfProvider

IWbemRefresher

Creazione di un provider di istanze in un provider di High-Performance

Provider contatore prestazioni

Scrittura di un provider di istanze