Поскольку операция, которую я выполняю, имеет порядок 500 нано, а таймеры не имеют точности, то, что я сделал, было
я сохранил фактическое время с помощью GetTickCount () - (использует точность ~ 12 миллионов) и выполняет выполнение маршрута N_TIMES (количество выполнений подпрограммы), которое остается до тех пор, пока я не нажму что-либо на консоли.
Рассчитайте время еще раз и сделайте разницу, разделив на N_TIMES, что-то вроде этого:
int статический счетчик;
void рутина ()
{
// Операции здесь ..
Счетчик ++;
} * +1010 *
int main () {
start <- GetTickCount ();
handle <- createThread (....., рутина, ...); <br>
ResumeThread (ручка);
getchar();
WaitForSingleObject (handle, INFINITE);
Elapsed = (GetTickCount () - начало) * 1000000.0) / counter;
printf ("Нанос:% d", истек);
}
:)