Это пример pgm для проверки функциональности функции Sleep(). Это демонстрация только потому, что я использую эти функции sleep() и clock() в разработке моего приложения. .
// TestTicks.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include<iostream>
#include<iomanip>
#include <Windows.h>
int _tmain(int argc, _TCHAR* argv[])
{
int i, i2;
i = clock();
//std::cout<<" \nTime before Sleep() : "<<i;
Sleep(30000);
i2 = clock();
//std::cout<<" \nTime After Sleep() : "<<i2;
std::cout<<"\n Diff : "<<i2 -i;
getchar();
return 0;
}
В этом коде я вычисляю время с помощью clock() до и после функции сна. Поскольку я использую sleep(30000), разница во времени будет как минимум 30000.
Я запускал эту программу много раз. и вывод на печать как 30000, 30001, 30002. Это нормально. Но иногда я получаю такие значения, как 29999 и 29997. Как это возможно, так как я поставил 30000 часов сна ч / б ().
Пожалуйста, объясните мне причину этого.