Функция GetThreadTimes


Функция GetThreadTimes извлекает информацию о распределении интервалов времени для заданного потока.

Синтаксис

BOOL GetThreadTimes(

HANDLE hThread,            // дескриптор потока
LPFILETIME
lpCreationTime, // время создания потока
LPFILETIME
lpExitTime,     // время выхода потока
LPFILETIME
lpKernelTime,   // время работы в привилегированном режиме
LPFILETIME
lpUserTime      // время работы в пользовательском режиме

);

Параметры

hThread

[in] Дескриптор потока, информация о распределении интервалов времени которого разыскивается. Этот дескриптор должен быть создан с правом доступа THREAD_QUERY_INFORMATION. Для получения дополнительной информации, см. статью Защита потока и права доступа.

lpCreationTime

[out] Указатель на структуру FILETIME, которая принимает момент создания потока.

lpExitTime

[out] Указатель на структуру FILETIME, которая принимает момент выхода потока. Если поток не вышел, содержание этой структуры не определенное.

lpKernelTime

[out] Указатель на структуру FILETIME, которая принимает величину времени, в ходе которого поток выполнялся в привилегированном режиме (режиме ядра).

lpUserTime

[out] Указатель на структуру FILETIME, которая принимает величину времени, в ходе которого поток выполнялся в непривилегированном (пользовательском) режиме.

Возвращаемые значения

Если функция завершается успешно, величина возвращаемого значения - не ноль.

Если функция завершается с ошибкой, величина возвращаемого значения - ноль. Чтобы получать расширенные данные об ошибках, вызовите GetLastError.

Замечания

Все периоды отражаются, при помощи использования структур данных FILETIME. Такая структура содержит два 32-разрядных значения, которые объединены, чтобы сформировать 64-разрядный счетчик тактов, размер которых 100 наносекунд.

Моменты создания и выхода потока являются точками во времени, выраженными как количество времени, которое прошло, начиная с полночи 1 января, 1601 в Гринвиче, в Англии. Имеется несколько функций, которые прикладная программа может использовать, чтобы конвертировать такие значения в более общие практические формы, см. статью Функции времени.

Периоды работы потока в привилегированном и непривилегированном режимах составляют величину времени его работы. Например, если поток затратил одну секунду в режиме ядра, эта функция заполнит структуру FILETIME, указанную параметром lpKernelTime с 64-разрядным значением десяти миллионов. Это число является 100 наносекундных единиц измерения в одной секунде.

Смотри также

Краткий обзор Процессы и потоки, Функции, используемые процессами и потоками, FILETIME, FileTimeToDosDateTime, FileTimeToLocalFileTime, FileTimeToSystemTime, OpenThread

Размещение и совместимость GetThreadTimes
К Windows Vista Да
л Windows XP Да
и Windows 2000 Professional Да
е Windows NT Workstation Да версии 3.5 и выше
н Windows Me Нет
т Windows 98 Нет
  Windows 95 Нет
 
С Windows Server 2008 Да
е Windows Server 2003 Да
р Windows 2000 Server Да
в Windows NT Server Да версии 3.5 и выше
е    
р    
Используемая библиотека Kernel32.lib
Используемая DLL kernel32.dll
Заголовочный файл  
- объявлено в Winbase.h
- включено в Windows.h
Unicode Нет
Замечания по платформе Не имеется

 

 

Назад в оглавление
На главную страницу
На оглавление справки

Hosted by uCoz