Función GetProcessTimes (processthreadsapi.h)

Recupera información de tiempo para el proceso especificado.

Sintaxis

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

Parámetros

[in] hProcess

Identificador del proceso cuya información de tiempo se busca. El identificador debe tener el derecho de acceso PROCESS_QUERY_INFORMATION o PROCESS_QUERY_LIMITED_INFORMATION . Para obtener más información, consulte Derechos de acceso y seguridad de procesos.

Windows Server 2003 y Windows XP: El identificador debe tener el derecho de acceso PROCESS_QUERY_INFORMATION.

[out] lpCreationTime

Puntero a una estructura FILETIME que recibe la hora de creación del proceso.

[out] lpExitTime

Puntero a una estructura FILETIME que recibe la hora de salida del proceso. Si el proceso no ha salido, el contenido de esta estructura no está definido.

[out] lpKernelTime

Puntero a una estructura FILETIME que recibe la cantidad de tiempo que el proceso se ha ejecutado en modo kernel. Se determina el tiempo que cada uno de los subprocesos del proceso se ha ejecutado en modo kernel y, a continuación, se sumarán todas esas veces para obtener este valor.

[out] lpUserTime

Puntero a una estructura FILETIME que recibe la cantidad de tiempo que el proceso se ha ejecutado en modo de usuario. Se determina el tiempo que cada uno de los subprocesos del proceso se ha ejecutado en modo de usuario y, a continuación, se sumarán todas esas veces para obtener este valor. Tenga en cuenta que este valor puede superar la cantidad de tiempo real transcurrido (entre lpCreationTime y lpExitTime) si el proceso se ejecuta en varios núcleos de CPU.

Valor devuelto

Si la función se realiza correctamente, el valor devuelto es distinto de cero.

Si la función no se realiza correctamente, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError.

Comentarios

Todas las veces se expresan mediante estructuras de datos FILETIME . Esta estructura contiene dos valores de 32 bits que se combinan para formar un recuento de 64 bits de unidades de tiempo de 100 nanosegundos.

Los tiempos de creación y salida del proceso son puntos en el tiempo expresados como la cantidad de tiempo transcurrido desde la medianoche del 1 de enero de 1601 en Greenwich, Inglaterra. Hay varias funciones que una aplicación puede usar para convertir estos valores en formularios más útiles en general.

El modo kernel de proceso y los tiempos del modo de usuario son cantidades de tiempo. Por ejemplo, si un proceso ha pasado un segundo en modo kernel, esta función rellenará la estructura FILETIME especificada por lpKernelTime con un valor de 64 bits de diez millones. Es el número de unidades de 100 nanosegundos en un segundo.

Para recuperar el número de ciclos de reloj de CPU usados por los subprocesos del proceso, use la función QueryProcessCycleTime .

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [aplicaciones de escritorio | aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2003 [aplicaciones de escritorio | aplicaciones para UWP]
Plataforma de destino Windows
Encabezado processthreadsapi.h (incluya Windows.h en Windows Server 2003, Windows Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2)
Library Kernel32.lib
Archivo DLL Kernel32.dll

Vea también

FILETIME

FileTimeToDosDateTime

FileTimeToLocalFileTime

FileTimeToSystemTime

Funciones de proceso y subproceso

Procesos