Mój program to nic innego jak prostacki stoper odliczający sekundy od uruchomienia programu:
#include "stdafx.h"
#include <iostream>
#include <ctime>
using namespace std;
const int N=600;
int main(void)
{
int formerValue;
int currentValue;
clock();
for(int i=0; (clock()/1000)<N ; i++)
{
currentValue=clock()/1000;
if(formerValue !=currentValue )
{
cout<<currentValue<<endl;
formerValue=currentValue;
}
else continue;
}
cout<<endl;
system("PAUSE");
}
Działa, ale zużycie procesora sięga rzędu 30% ( tyle co przy grach 3D!). Pytania są dwa:
- Dlaczego tak się dzieje?
- Jaka jest alternatywna droga do wypełnienia algorytmu(funkcje spoza biblioteki standardowej?) , tak żeby oszczędzić zasoby systemu.