Share via


Fonction JetGetThreadStats

S’applique à : Windows | Windows Server

Fonction JetGetThreadStats

La fonction JetGetThreadStats récupère les informations de performances du moteur de base de données pour le thread actif. Plusieurs appels peuvent être utilisés pour collecter des statistiques qui reflètent l’activité du moteur de base de données sur ce thread entre ces appels.

Windows Vista:JetGetThreadStats est introduit dans Windows Vista.

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

Paramètres

pvResult

Mémoire tampon de sortie qui reçoit les données des statistiques de thread. La mémoire tampon contient une structure JET_THREADSTATS après un appel réussi.

cbMax

Taille maximale en octets de la mémoire tampon de sortie.

Valeur renvoyée

Cette fonction retourne le type de données JET_ERR avec l’un des codes de retour suivants. Pour plus d’informations sur les erreurs ESE possibles, consultez Erreurs du moteur de stockage extensible et Paramètres de gestion des erreurs.

Code de retour

Description

JET_errSuccess

L’opération s’est terminée avec succès.

JET_errBufferTooSmall

L’opération a échoué, car la mémoire tampon de sortie fournie était trop petite pour contenir les données demandées. La fonction JetGetThreadStats retourne cette erreur lorsque la mémoire tampon de sortie est trop petite pour contenir la plus petite version de la structure JET_THREADSTATS prise en charge par le moteur de base de données.

En cas de réussite, la mémoire tampon de sortie contiendra une structure JET_THREADSTATS qui contient les statistiques du moteur de base de données pour le thread actif.

En cas d’échec, l’état de la mémoire tampon de sortie n’est pas défini.

Notes

Les informations fournies par deux appels consécutifs de cette API sont destinées à être utilisées pour calculer les dépenses liées aux autres opérations du moteur de base de données sur le thread actuel. En règle générale, pour ce faire, prenez un avant et après lecture des statistiques et soustrayez le nombre après du nombre avant pour obtenir le nombre net d’opérations effectuées.

Par exemple, une application peut appeler JetGetThreadStats une fois pour obtenir une lecture initiale des statistiques pour le thread actif. Il peut ensuite appeler la fonction JetMove avec le paramètre cRow défini sur JET_MoveNext pour passer à l’entrée d’index suivante sur un index. Il peut ensuite appeler à nouveau JetGetThreadStats pour obtenir une autre lecture des statistiques du thread. Il pourrait alors soustraire le compteur cPageReferenced de la deuxième lecture de la première. Le résultat serait le nombre de pages de base de données référencées par le moteur de base de données pour effectuer l’opération JetMove .

Les statistiques de chaque thread sont accumulées pendant la durée de vie de ce thread. Les statistiques sont réinitialisées si la DLL du moteur de base de données est déchargée du processus hôte.

La structure JET_THREADSTATS sera probablement étendue à l’avenir pour contenir plus de statistiques. De nouvelles statistiques seront ajoutées à la fin de la structure et peuvent être récupérées avec une taille de mémoire tampon de sortie accrue. La présence de statistiques supplémentaires peut être déduite par une valeur cbStruct plus grande.

Spécifications

Condition requise Valeur

Client

Nécessite Windows Vista.

Serveur

Nécessite Windows Server 2008.

En-tête

Déclaré dans Esent.h.

Bibliothèque

Utilisez ESENT.lib.

DLL

Nécessite ESENT.dll.

Voir aussi

JET_ERR
JET_THREADSTATS
JetMove