ProcessThread.UserProcessorTime Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает время, затраченное связанным потоком на выполнение кода в приложении.
public:
property TimeSpan UserProcessorTime { TimeSpan get(); };
[System.Runtime.Versioning.SupportedOSPlatform("maccatalyst")]
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
public TimeSpan UserProcessorTime { get; }
public TimeSpan UserProcessorTime { get; }
[<System.Runtime.Versioning.SupportedOSPlatform("maccatalyst")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
member this.UserProcessorTime : TimeSpan
member this.UserProcessorTime : TimeSpan
Public ReadOnly Property UserProcessorTime As TimeSpan
Значение свойства
Указывает TimeSpan время, затраченное потоком на выполнение кода внутри приложения, а не внутри ядра операционной системы.
- Атрибуты
Исключения
Не удалось получить время потока.
Процесс находится на удаленном компьютере.
Комментарии
Windows NT использует несколько различных механизмов защиты, а в корне всех — различие между режимом пользователя и привилегированным режимом. UserProcessorTime соответствует времени, затраченного приложением в пользовательском режиме, за пределами ядра операционной системы. Соответствует PrivilegedProcessorTime времени, затраченного приложением на выполнение кода в привилегированном режиме в системном ядре.
Режим пользователя ограничивает приложение двумя важными способами. Во-первых, приложение не может напрямую обращаться к периферийным устройствам, но вместо этого необходимо вызвать ядро операционной системы, чтобы получить или задать периферийные данные. Таким образом, операционная система может гарантировать, что одно приложение не уничтожает периферийные данные, необходимые другим. Во-вторых, приложение не может считывать или изменять данные, которые сама операционная система поддерживает. Это ограничение запрещает приложениям непреднамеренно или намеренно повреждено ядро. Если приложению требуется операционная система для выполнения операции, она вызывает одну из подпрограмм системы. Многие из этих переходов в привилегированный режим, выполнение операции и плавное возвращение в режим пользователя.