Partager via


GetProcessTimes, fonction (processthreadsapi.h)

Récupère les informations de minutage pour le processus spécifié.

Syntaxe

BOOL GetProcessTimes(
  [in]  HANDLE     hProcess,
  [out] LPFILETIME lpCreationTime,
  [out] LPFILETIME lpExitTime,
  [out] LPFILETIME lpKernelTime,
  [out] LPFILETIME lpUserTime
);

Paramètres

[in] hProcess

Handle du processus dont les informations de minutage sont recherchées. Le handle doit avoir le droit d’accès PROCESS_QUERY_INFORMATION ou PROCESS_QUERY_LIMITED_INFORMATION . Pour plus d’informations, consultez Droits d’accès et de sécurité des processus.

Windows Server 2003 et Windows XP : Le handle doit avoir le droit d’accès PROCESS_QUERY_INFORMATION .

[out] lpCreationTime

Pointeur vers une structure FILETIME qui reçoit l’heure de création du processus.

[out] lpExitTime

Pointeur vers une structure FILETIME qui reçoit l’heure de sortie du processus. Si le processus n’est pas arrêté, le contenu de cette structure n’est pas défini.

[out] lpKernelTime

Pointeur vers une structure FILETIME qui reçoit la durée d’exécution du processus en mode noyau. L’heure d’exécution de chacun des threads du processus en mode noyau est déterminée, puis toutes ces heures sont additionnées pour obtenir cette valeur.

[out] lpUserTime

Pointeur vers une structure FILETIME qui reçoit la durée d’exécution du processus en mode utilisateur. L’heure d’exécution de chacun des threads du processus en mode utilisateur est déterminée, puis toutes ces heures sont additionnées pour obtenir cette valeur. Notez que cette valeur peut dépasser le temps réel écoulé (entre lpCreationTime et lpExitTime) si le processus s’exécute sur plusieurs cœurs de processeur.

Valeur retournée

Si la fonction réussit, la valeur de retour est différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.

Remarques

Toutes les heures sont exprimées à l’aide de structures de données FILETIME . Une telle structure contient deux valeurs 32 bits qui se combinent pour former un nombre 64 bits d’unités de temps de 100 nanosecondes.

Les heures de création et de sortie des processus sont des points dans le temps exprimés sous la forme du temps écoulé depuis minuit le 1er janvier 1601 à Greenwich, en Angleterre. Une application peut utiliser plusieurs fonctions pour convertir ces valeurs en formulaires plus généralement utiles.

Les durées du mode noyau de processus et du mode utilisateur sont des durées. Par exemple, si un processus a passé une seconde en mode noyau, cette fonction remplit la structure FILETIME spécifiée par lpKernelTime avec une valeur 64 bits de dix millions. C’est le nombre d’unités de 100 nanosecondes en une seconde.

Pour récupérer le nombre de cycles d’horloge du processeur utilisés par les threads du processus, utilisez la fonction QueryProcessCycleTime .

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP [applications de bureau | applications UWP]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau | applications UWP]
Plateforme cible Windows
En-tête processthreadsapi.h (inclure Windows.h sur Windows Server 2003, Windows Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2)
Bibliothèque Kernel32.lib
DLL Kernel32.dll

Voir aussi

FILETIME

FileTimeToDosDateTime

FileTimeToLocalFileTime

FileTimeToSystemTime

Fonctions de processus et de thread

Processus