Пространства имён
Варианты
Действия

std::clock

Материал из cppreference.com
< cpp‎ | chrono‎ | c

 
 
 
 
C-стиле дату и время коммунальные услуги
Функции
Оригинал:
Functions
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Время манипуляции
Оригинал:
Time manipulation
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
difftime
time
clock
Формат преобразования
Оригинал:
Format conversions
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
asctime
ctime
strftime
wcsftime
gmtime
localtime
mktime
Константы
Оригинал:
Constants
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
CLOCKS_PER_SEC
Типы
Оригинал:
Types
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
tm
time_t
clock_t
 
Определено в заголовочном файле <ctime>
std::clock_t clock();
Возвращает приблизительное время процессора, используемого в процессе с начала реализации определенной эпохи, связанные с исполнением программы. Для преобразования результата значение в секундах разделить его на CLOCKS_PER_SEC. Потому что в начале std::clock эпоху не должны совпадать с начала программы, только разница между двумя значениями возвращаются различных вызовов std::clock имеет смысл. Если процессор совместно с другими процессами, std::clock время может продвигаться медленнее, чем настенные часы. Если текущий процесс является многопоточной и более одного выполнение основных доступно, std::clock время может продвигаться быстрее, чем настенные часы.
Оригинал:
Returns the approximate processor time used by the process since the beginning of an implementation-defined era related to the program's execution. To convert result value to seconds divide it by CLOCKS_PER_SEC. Because the beginning of the std::clock era does not have to coincide with the start of the program, only the difference between two values returned by different calls to std::clock is meaningful. If the CPU is shared by other processes, std::clock time may advance slower than wall clock. If the current process is multithreaded and more than one execution core is available, std::clock time may advance faster than wall clock.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

Содержание

[править] Параметры

(Нет)

[править] Возвращаемое значение

Процессор время используется программа до сих пор или (clock_t)(-1) если эта информация остается недоступным.
Оригинал:
Processor time used by the program so far or (clock_t)(-1) if that information is unavailable.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

[править] Заметки

В POSIX-совместимых систем, clock_gettime с тактовой ID CLOCK_PROCESS_CPUTIME_ID предлагает лучшее решение.
Оригинал:
On POSIX-compatible systems, clock_gettime with clock id CLOCK_PROCESS_CPUTIME_ID offers better resolution.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Значение, возвращаемое clock() может обернуть вокруг некоторых реализациях. Например, на компьютере с 32-разрядной std::clock_t, он обертывает после 2147 секунд или 36 минут.
Оригинал:
The value returned by clock() may wrap around on some implementations. For example, on a machine with 32-bit std::clock_t, it wraps after 2147 seconds or 36 minutes.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
clock() не обязан быть поточно-.
Оригинал:
clock() is not required to be thread-safe.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

[править] Пример

Этот пример демонстрирует разницу между часами () времени и в режиме реального времени
Оригинал:
This example demonstrates the difference between clock() time and real time
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

#include <iostream>
#include <chrono>
#include <ctime>
#include <thread>
 
// the function f() does some time-consuming work
void f()
{
    volatile double d;
    for(int n=0; n<10000; ++n)
       for(int m=0; m<10000; ++m)
           d += d*n*m;
}
 
int main()
{
    std::clock_t c_start = std::clock();
    auto t_start = std::chrono::high_resolution_clock::now();
    std::thread t1(f);
    std::thread t2(f); // f() is called on two threads
    t1.join();
    t2.join();
    std::clock_t c_end = std::clock();
    auto t_end = std::chrono::high_resolution_clock::now();
 
    std::cout << "CPU time used: "
              << 1000.0 * (c_end-c_start) / CLOCKS_PER_SEC
              << " ms\n";
    std::cout << "Wall clock time passed: "
              << std::chrono::duration_cast<std::chrono::milliseconds>(t_end - t_start).count()
              << " ms\n";
}

Вывод:

CPU time used: 1520 ms
Wall clock time passed: 769 ms

[править] См. также

преобразует time_t объекта в текстовое представление
Оригинал:
converts a time_t object to a textual representation
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(функция) [edit]
возвращает текущее время системы как раз с эпохой
Оригинал:
returns the current time of the system as time since epoch
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(функция) [edit]
C documentation for clock