Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > Время выполнения функций


Автор: Klin 3.5.2007, 12:39
Иногда требуется получить время выполнения фунции, реализовать это достаточно просто:
Код

 DWORD myMark = GetTickCount();
  /* здесь находятся ваши функции */
 AnsiString myLength = FloatToStr((GetTickCount()-myMark)/1000.);

  •  myMark - временная метка, которую мы получаем с помошью функции
  •  myLength - время выполнения функции

Здесь используется функция GetTickCount(), которая возвращает время с момента запуска операционной системы. Время выполнения фунции не будет находиться правильно, если время выполнения функции(й) длится более 49,7 дней. Т.к. Windows обнуляет значение счетчика, отвечающего за определение времени с момента запуска системы.

пример:

Код

  DWORD myMark = GetTickCount();
   for (int n = 1; n<100; n++) Memo1->Lines->Add(n);
 AnsiString myLength = FloatToStr((GetTickCount()-myMark)/1000);
 ShowMessage(myLength);

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)