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 |