Condividi tramite


Funzione JetGetThreadStats

Si applica a: Windows | Windows Server

Funzione JetGetThreadStats

La funzione JetGetThreadStats recupera le informazioni sulle prestazioni dal motore di database per il thread corrente. È possibile usare più chiamate per raccogliere statistiche che riflettono l'attività del motore di database in questo thread tra tali chiamate.

Windows Vista:JetGetThreadStats è stato introdotto in Windows Vista.

    JET_ERR JET_API JetGetThreadStats(
      __out         void* pvResult,
      __in          unsigned long cbMax
    );

Parametri

pvResult

Buffer di output che riceve i dati delle statistiche del thread. Il buffer contiene una struttura JET_THREADSTATS dopo una chiamata riuscita.

cbMax

Dimensione massima in byte del buffer di output.

Valore restituito

Questa funzione restituisce il tipo di dati JET_ERR con uno dei codici restituiti seguenti. Per altre informazioni sui possibili errori ESE, vedere Errori del motore di archiviazione estendibile e parametri di gestione degli errori.

Codice restituito

Descrizione

JET_errSuccess

Operazione riuscita.

JET_errBufferTooSmall

L'operazione non è riuscita perché il buffer di output fornito era troppo piccolo per contenere i dati richiesti. La funzione JetGetThreadStats restituirà questo errore quando il buffer di output è troppo piccolo per contenere la versione più piccola della struttura JET_THREADSTATS supportata dal motore di database.

In caso di esito positivo, il buffer di output conterrà una struttura JET_THREADSTATS contenente le statistiche del motore di database per il thread corrente.

In caso di errore, lo stato del buffer di output non è definito.

Commenti

Le informazioni fornite da due chiamate consecutive di questa API devono essere usate per calcolare le spese di qualsiasi altra operazione del motore di database nel thread corrente. In genere, questa operazione viene eseguita prendendo prima e dopo la lettura delle statistiche e sottraendo il conteggio dopo dal conteggio prima per ottenere il conteggio netto delle operazioni eseguite.

Ad esempio, un'applicazione può chiamare JetGetThreadStats una volta per ottenere una lettura iniziale delle statistiche per il thread corrente. Potrebbe quindi chiamare la funzione JetMove con il parametro cRow impostato su JET_MoveNext per passare alla voce di indice successiva in un indice. Potrebbe quindi chiamare nuovamente JetGetThreadStats per ottenere un'altra lettura delle statistiche del thread. Potrebbe quindi sottrarre il contatore cPageReferenced dalla seconda lettura dal primo. Il risultato sarà il numero di pagine di database a cui fa riferimento il motore di database per eseguire l'operazione JetMove .

Le statistiche per ogni thread vengono accumulate per la durata del thread. Le statistiche vengono reimpostate se la DLL del motore di database viene scaricata dal processo host.

La struttura JET_THREADSTATS sarà probabilmente ampliata in futuro in modo da contenere più statistiche. Le nuove statistiche verranno aggiunte alla fine della struttura e possono essere recuperate con dimensioni maggiori del buffer di output. La presenza di statistiche aggiuntive può essere dedotta da un valore cbStruct più grande.

Requisiti

Requisito Valore

Client

Richiede Windows Vista.

Server

Richiede Windows Server 2008.

Intestazione

Dichiarato in Esent.h.

Libreria

Usare ESENT.lib.

DLL

Richiede ESENT.dll.

Vedere anche

JET_ERR
JET_THREADSTATS
JetMove