Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Текущее время


Влад ©   (2007-01-05 23:15:00) 

Как узнать текущее время с точностью до миллисекунд?


vertal   (2007-01-06 02:59:00) [1]

> palva ©   (06.01.07 01:52) [7]

Что характерно - сейчас проверил - GetSystemTimeAsFileTime работает с тем же дискретом (на моей машине - 10 мс), даром что дискрет формата возвращаемого значения - аж 100 наносекунд.

Хотя я думаю, что производительность процессора тут не при чем, а дело в системном таймере и способе обновления системного времени


palva   (2007-01-06 01:52:00) [2]

> Как узнать текущее время с точностью до миллисекунд?

На некоторых процессорах никак. Всего точнее использовать GetTickCount, но это значение не будет меняться с единичным шагом.

{$APPTYPE CONSOLE}

uses
 Windows, SysUtils;
var
 nn, dd, dif: DWORD;
begin
 nn := 0;
 dd := GetTickCount();
 repeat
   inc(nn);
   dif := GetTickCount() - dd;
 until dif > 0;
 WriteLn(nn);  // 246684
 WriteLn(dif); // 16
end.

Ну вот, видно, что меняется с шагом 16, а у меня Pentium-4. На более слабых процессорах шаг будет еще больше.


trubin   (2007-01-06 00:19:00) [3]

GetLocalTime

Его кстати и использует ф-я Time


kaZaNoVa   (2007-01-05 23:55:00) [4]

GetTickCount ?


Влад   (2007-01-05 23:40:00) [5]

Спасибо


try   (2007-01-05 23:30:00) [6]

*24*60*60*1000


Влад   (2007-01-05 23:26:00) [7]

А как его в миллисекунды переделать?


Плохиш   (2007-01-05 23:16:00) [8]

time


Наверх

Титульная страница Поиск, карта сайта Написать письмо