Как отследить общее время программы?

Обычно в IDE, когда вы запускаете программу, IDE сообщит вам общее количество времени, которое потребовалось для запуска программы. Есть ли способ получить общее количество времени, которое требуется для запуска программы при использовании терминала в Unix / Linux для компиляции и запуска?

Мне известно о ctime, которое позволяет получить общее время с 1970 года, однако я хочу получить только время, необходимое для запуска программы.

0

Решение

Вы можете запускать программы со временем:

[:~/tmp] $ time sleep 1

real    0m1.007s
user    0m0.001s
sys     0m0.003s
4

Другие решения

Ты на правильном пути! Вы можете получить текущее время и вычесть его из времени окончания вашей программы. Код ниже проиллюстрирован:

time_t begin = time(0);   // get current time

// Do Stuff //

time_t end = time(0);   // get current time

// Show number of seconds that have passed since program began //
std::cout << end - begin << std::endl;

НОТА: Время детализации составляет всего одну секунду. Если вам нужна более высокая степень детализации, я предлагаю рассмотреть точные таймеры, такие как QueryPerformanceCounter () на окнах или clock_gettime () на Linux. В обоих случаях код, скорее всего, будет работать очень похоже.

1

В качестве дополнения к ответу mdsl, если вы хотите получить что-то близкое к этому измерению в самой программе, вы можете получить время в начале программы и получить время в конце программы (как вы сказали, во времени с 1970 года) — затем вычтите время начала из времени окончания.

0
По вопросам рекламы ammmcru@yandex.ru
Adblock
detector