আমরা নিম্নলিখিত সিনট্যাক্স ব্যবহার করে একটি কোড স্নিপেটের কার্যকর করার সময় গণনা করতে পারি -
auto start = high_resolution_clock::now(); // Start time // Code snippet auto stop = high_resolution_clock::now(); // Stop time auto duration = duration_cast<microseconds>(stop - start); // Duration
ক্লাস 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 << "The sum of numbers : " << 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 << "\nTime taken by function : "<< duration.count() << " microseconds"; return 0; }
আউটপুট
The sum of numbers : 36 Time taken by function : 42 microseconds
উপরের প্রোগ্রামে, সংখ্যার যোগফল গণনা করার জন্য একটি ফাংশন sum() সংজ্ঞায়িত করা হয়েছে।
int sum(int x, int y) { int s = x + y; cout << "The sum of numbers : " << s; }
main() ফাংশনে, আমরা কিছু পূর্বনির্ধারিত ফাংশন এবং ক্লাস "chrono" ব্যবহার করে ফাংশন sum() দ্বারা নেওয়া সময় রেকর্ড করেছি৷
auto start = high_resolution_clock::now(); sum(28, 8); auto stop = high_resolution_clock::now(); auto duration = duration_cast<microseconds>(stop - start);