vendredi 27 février 2015

I need to implement a function that should do specified task for specified duration which is passed to it as parameter (std::chrono::milliseconds).


I have come up with code :



void Run(std::chrono::milliseconds ms)
{
std::chrono::time_point<std::chrono::system_clock> start, end;
start = std::chrono::system_clock::now();
std::chrono::duration<double> elapsed_seconds = end - start;
while (elapsed_seconds <= (ms / 1000))
{
std::cout << "Running" << std::endl;
end = std::chrono::system_clock::now();
elapsed_seconds = end - start;
}
}

int main()
{
{
std::chrono::milliseconds ms(30000);
Run(ms);
system("Pause");
}


I suppose the code to print Running for 30 seconds and then exit. But it does not do so. How do I achieve such behavior with C++ <chrono>


Aucun commentaire:

Enregistrer un commentaire