Czas, pętla i zamulanie
Ostatnio zmodyfikowano 2015-01-02 12:53
lekarz Temat założony przez niniejszego użytkownika |
Czas, pętla i zamulanie » 2015-01-01 14:23:06 Napisałem program, który co 2.5 sekundy wyświetla komunikat o czasie jaki upłynął od uruchomienia. Problem w tym że program ten bardzo obciąża procesor.
Czy ktoś mógłby mi podpowiedzieć jak poprawić ten kod, aby nie obciążał tak bardzo komputera?
Poniżej kod:
#include <iostream> #include <cstdio> #include <ctime> #include <conio.h>
using namespace std;
//////// czas w milisekundach
double obliczSekundy( clock_t czas ) { return static_cast < double >( czas ) / CLOCKS_PER_SEC; } //////// czas w milisekundach
int main() {
double start=0; double co_ile_sekund=2.5; int i=0; unsigned char znak; do {
if(obliczSekundy( clock() )>=start) { cout<<obliczSekundy( clock() )<<"[sek]"; start+=co_ile_sekund; }
if( kbhit() ) znak = getch(); static_cast < int >( znak ); if( znak == 27 ) {i=2;}
i--; }while(i!=1);
return 0; }
|
|
Monika90 |
» 2015-01-01 14:37:15 #include <thread>
int main() { std::this_thread::sleep_for( std::chrono::milliseconds( 2500 ) ); }
|
|
lekarz Temat założony przez niniejszego użytkownika |
» 2015-01-01 21:23:02 Wyskoczył taki błąd:
#error This file requires compiler and library support for the upcoming \ ISO C++ standard, C++0x. This support is currently experimental, and must be \ enabled with the -std=c++0x or -std=gnu++0x compiler options.
Jakby co to ja piszę program pod linuxem:) |
|
czosnek17 |
» 2015-01-01 22:21:39 Zaznacz w opcjach kompilatorach flagę -std=c++0x albo -std=gnu++0x. |
|
lekarz Temat założony przez niniejszego użytkownika |
» 2015-01-02 12:53:13 Dzieki:)
Skorzystałem z nanosleep |
|
« 1 » |