system_clock edustaa järjestelmän laajuista reaaliaikaista seinäkelloa. Siihen vaikuttavat järjestelmän aikasäädöt.
steady_clock edustaa monotonisesti kasvavaa kelloa, johon järjestelmän ajan muutokset eivät vaikuta.
high_resolution_clock on kello, jolla on lyhyin järjestelmässä käytettävissä oleva tikitusjakso.
lausunnon kattavuus
Lisäksi
Chrono-kirjastoa käytetään päivämäärän ja ajan käsittelemiseen. Tämä kirjasto on suunniteltu käsittelemään sitä tosiasiaa, että ajastimet ja kellot voivat olla erilaisia eri järjestelmissä, ja siten parantamaan tarkkuutta ajan myötä. Ainutlaatuinen asia chronossa on, että se tarjoaa a tarkkuusneutraali konsepti erottamalla kesto ja aikapiste (aikapiste) tietyistä kelloista. chrono on otsikon ja myös alinimiavaruuden nimi: Kaikki tämän otsikon elementit (paitsi common_type-erikoisalat) ei ole määritetty suoraan std-nimiavaruuden alle (kuten useimmat standardikirjastot) vaan std::chrono-nimiavaruus . Tämän otsikon elementit käsittelevät aikaa. Tämä tehdään pääasiassa kolmen käsitteen avulla:
Kesto
Kestoobjekti ilmaisee aikajänteen laskennalla, kuten minuutti kaksi tuntia tai kymmenen millisekuntia. Esimerkiksi '42 sekuntia' voitaisiin edustaa kestona, joka koostuu 42 tikkusta 1 sekunnin aikayksikössä.
CPP// C++ program to illustrate the utility // function duration::count #include #include int main () { using namespace std::chrono; // std::chrono::milliseconds is an // instantiation of std::chrono::duration:- 1 second milliseconds mil(1000); mil = mil*60; std::cout << "duration (in periods): "; std::cout << mil.count() << " milliseconds.n"; std::cout << "duration (in seconds): "; std::cout << (mil.count() * milliseconds::period::num / milliseconds::period::den); std::cout << " seconds.n"; return 0; }
Lähtö:
duration (in periods): 60000 milliseconds. duration (in seconds): 60 seconds.
Kello
java-syöttömerkkijono
Kello koostuu aloituspisteestä (tai aikakaudesta) ja tikitysnopeudesta. Esimerkiksi kellon aikakausi voi olla 22. helmikuuta 1996 ja se tikittää joka sekunti. C++ määrittelee kolme kellotyyppiä:
Aikapiste
Time_point -objekti ilmaisee ajankohdan suhteessa kellon aikakauteen. Sisäisesti objekti tallentaa kestotyyppisen objektin ja käyttää Kello-tyyppiä viitteenä aikakaudelleen.
CPP// C++ program to illustrate time point // and system clock functions #include #include #include // Function to calculate // Fibonacci series long fibonacci(unsigned n) { if (n < 2) return n; return fibonacci(n-1) + fibonacci(n-2); } int main() { // Using time point and system_clock std::chrono::time_point<std::chrono::system_clock> start end; start = std::chrono::system_clock::now(); std::cout << "f(42) = " << fibonacci(42) << 'n'; end = std::chrono::system_clock::now(); std::chrono::duration<double> elapsed_seconds = end - start; std::time_t end_time = std::chrono::system_clock::to_time_t(end); std::cout << "finished computation at " << std::ctime(&end_time) << "elapsed time: " << elapsed_seconds.count() << "sn"; }
Lähtö:
f(42) = 267914296 finished computation at Wed Jan 4 05:13:48 2017 elapsed time: 2.14538s
On tärkeää huomata, että kellojen ja kestojen tarkkuus ja tarkkuus
np tarkoittaa
Luo tietokilpailu