हम निम्नलिखित सिंटैक्स का उपयोग करके कोड स्निपेट का एक्ज़ीक्यूशन टाइम कैलकुलेट कर सकते हैं −
auto start = high_resolution_clock::now(); // प्रारंभ समय // कोड स्निपेट auto stop = high_resolution_clock::now(); // रुकने का समय auto duration = duration_cast<microseconds>(stop - start); // अवधि
क्लास high_resolution_clock "chrono" हेडर फ़ाइल में परिभाषित है। फंक्शन now() कॉल के समय के अनुरूप एक मान लौटाता है।
उस विशेष कोड द्वारा लिए गए समय को रिकॉर्ड करने के लिए एक हेडर फ़ाइल का उपयोग किया जाता है।
#include <chrono> using namespace std::chrono;
कोड स्निपेट का एक्ज़ीक्यूशन टाइम कैलकुलेट करने का एक उदाहरण निम्नलिखिक है।
उदाहरण
#include <iostream> #include <chrono> using namespace std::chrono; using namespace std; int sum(int x, int y) { int s = x + y; cout << "संख्याओं का योग: " << s; } int main() { auto start = high_resolution_clock::now(); sum(28, 8); auto stop = high_resolution_clock::now(); auto duration = duration_cast<microseconds>(stop - start); cout << "\nफंक्शन द्वारा लिया गया समय: "<< duration.count() << " माइक्रोसेकंड्स"; return 0; } आउटपुट
संख्याओं का योग: 36 फंक्शन द्वारा लिया गया समय: 42 माइक्रोसेकंड्स
उपरोक्त प्रोग्राम में, दो संख्याओं का योग कैलकुलेट करने के लिए एक फंक्शन sum() परिभाषित किया गया है।
int sum(int x, int y) { int s = x + y; cout << "संख्याओं का योग: " << s; } main() फंक्शन में, हमने sum() फंक्शन द्वारा लिए गए समय को कुछ प्रीडिफाइन्ड फंक्शन्स और क्लास "chrono" का उपयोग करके रिकॉर्ड किया।
auto start = high_resolution_clock::now(); sum(28, 8); auto stop = high_resolution_clock::now(); auto duration = duration_cast<microseconds>(stop - start);