Определение точного времени в delphi
Назрел вот такой каверзный вопросец: нужно определить точное время с точностью до сотых частей миллисекунд. Кто знает?
Нужно это для вычисления времени работы программы, но т.к. количество данных относительно мало, то наглядно показать время работы программы не получается (вот где они минусы быстрых процессоров ;)).
QueryPerformanceCounter
или еще специально увеличивают время выполнения программы, чтобы оценить скорость её работы.
а говорят еще есть очень точный таймер APIC, как его использовать ищите в гугле, я не знаю =)
Можно использовать
или еще специально увеличивают время выполнения программы, чтобы оценить скорость её работы.
а говорят еще есть очень точный таймер APIC, как его использовать ищите в гугле, я не знаю =)
Цитата: bagie2
специально увеличивают время выполнения программы, чтобы оценить скорость её работы.
это, конечно, наиболее лёгкий вариант решения проблемы, но заданным условием такой шаг запрещён..
//***************************************
procedure Timer1Timer_Main;
begin
GLOB_Tic:=...; // воспользуйтесь рекомендациями http://www.vr-online.ru/content/osnovy-raboty-s-potokami-v-delphi-349
Label1.Caption:=FloatToStrF((GLOB_Tic-GLOB_Tic_Old),ffFixed,3,9);
// Ваши действия (функционал)
GLOB_Tic_Old:=...; // воспользуйтесь рекомендациями http://www.vr-online.ru/content/osnovy-raboty-s-potokami-v-delphi-349
end;
procedure TimerProc(uTimerID, uMessage: UINT; dwUser, dw1, dw2: DWORD) stdcall; //- в программе описывать перед implementation
begin
Timer1Timer_Main; // контроль времени выполнения этой процедуры
end;
TimerID:=timeSetEvent(1, 1, @TimerProc, 100, TIME_PERIODIC); - создать поток таймера с миллисекундной задержкой
timeKillEvent(TimerID); - убить таймер
Сорри: ссылка такая : http://habrahabr.ru/post/75234/