Russian Qt Forum

Qt => Общие вопросы => Тема начата: warlock от Апрель 29, 2010, 13:07



Название: Как засечь время работы программы?
Отправлено: warlock от Апрель 29, 2010, 13:07
Здравствуйте!
В моей программе предполагаеться, что скрипт будет работать не моментально, поскольку будет выполнять огромное количество математических операций. Какими средствами в Qt можно засечь время когда программа начала работать, а затем при окончании получить интервал прошедшего времени?


Название: Re: Как засечь время работы программы?
Отправлено: Павел_F. от Апрель 29, 2010, 13:14
Код
C++ (Qt)
   QTime start = QTime::currentTime();
   ....
   qDebug() << "прошло " << start.elapsed() << " милисекунд";

Ну, если есть шанс что пока прога работает смениться день, нужно будет докрутить учет текущей даты.


Название: Re: Как засечь время работы программы?
Отправлено: warlock от Апрель 29, 2010, 13:23
Замечательно  :)
Сначала копал в документации по  QTimer, а потом нашел еще что можно так засечь время:
Код
C++ (Qt)
QTime t;
t.start();
some_lengthy_task();
qDebug("Time elapsed: %d ms", t.elapsed());
 
Павел, помогли, спасибо  :)


Название: Re: Как засечь время работы программы?
Отправлено: Павел_F. от Апрель 29, 2010, 13:34
Ааа... ну да, про существование start забыл.


Название: Re: Как засечь время работы программы?
Отправлено: Sancho_s_rancho от Май 03, 2010, 21:33
Посмотри в сторону модуля Qt под названием QTest. Там есть замеры скорости/производительности. Для точного замера Qtest гоняет быстрые функции много раз и получаются результаты горазо точнее, чем с простым таймером.