класс WMI Win32_Thared
содержит свойства KernelModeTime
и UserModeTime
, которые, если они доступны, подсчитывают 100 нс единиц фактического выполнения.
Но из документации :
Если эта информация недоступна, следует использовать значение 0 (ноль).
Таким образом, это может зависеть от ОС (оно обязательно заполняется здесь на Win7).
Запрос типа: select * from win32_thread where ProcessHandle="x"
получит Win32_Thread
экземпляров для идентификатора процесса x
(игнорировать «дескриптор» в названии).Например, используя PowerShell, он просматривает собственные потоки:
PS[64bit] > gwmi -Query "select * from win32_thread where ProcessHandle=""7064"""|
ft -AutoSize Handle,KernelModeTime,UserModeTime
Handle KernelModeTime UserModeTime
------ -------------- ------------
5548 218 312
6620 0 0
6112 0 0
7148 0 15
6888 0 0
7380 0 0
3992 0 0
8372 0 0
644 0 0
1328 0 15
(И чтобы подтвердить, что это не истекшее время, время запуска процесса равно 16:44:50 2010-09-30.