হাই রেজোলিউশন টাইমার তৈরি করতে আমরা chrono লাইব্রেরি ব্যবহার করতে পারি। এই লাইব্রেরিতে হাই রেজোলিউশন ক্লক আছে। এটি ন্যানোসেকেন্ডে কাউন্ট করতে পারে।
এই প্রোগ্রামে আমরা এক্সিকিউশন টাইম ন্যানোসেকেন্ডে দেখব। আমরা প্রথমে টাইম ভ্যালু নিব, তারপর শেষে আরেকটি টাইম ভ্যালু নিব, তারপর ডিফারেন্স বের করে এলাপসড টাইম পাব। এখানে আমরা ব্ল্যাঙ্ক লুপ ব্যবহার করছি কিছুক্ষণ পজ করার জন্য।
উদাহরণ
#include <iostream>
#include <chrono>
typedef std::chrono::high_resolution_clock Clock;
main() {
auto start_time = Clock::now();
for (int i = 0; i < 200000000; i++) {
// একটি খালি লুপ তৈরি করুন
}
auto end_time = Clock::now();
std::cout << "Time difference:"
<< std::chrono::duration_cast<std::chrono::nanoseconds>(end_time - start_time).count()
<< " nanoseconds" << std::endl;
}
আউটপুট
Time difference: 536395307 nanoseconds