QueryPerformanceCounter

Sesekali nulis serius di sini. Malu ternyata ada yang baca hehe. Bukan bermaksud riya maupun sebangsanya. Catatan ini murni buat pengingat doang, maklum sekarang merasa suka jadi pelupa. haha.

Cuplikan (tepatnya hasil kopas) kode di bawah berguna bagi Anda yang sedang bingung mencari cara menghitung waktu di C++ dengan ketelitian sampai milidetik. Soalnya, yang ada biasanya hanya sampai ketelitian detik saja. Seperti pakai clock_t atau time_t. CMIIW.

Nah, berdasarkan hasil googling Jumat (28/12) pagi, ternyata ada cara lain yang dapat digunakan untuk menghitung waktu itu. Caranya denganpakai QueryPerformanceCounter(). Lengkapnya lihat saja di bawah, soalnya saya juga nggak ngerti😀.


#include

double PCFreq = 0.0;
__int64 CounterStart = 0;

void StartCounter()
{
LARGE_INTEGER li;
if(!QueryPerformanceFrequency(&li))
cout << "QueryPerformanceFrequency failed!\n";

PCFreq = double(li.QuadPart)/1000.0;

QueryPerformanceCounter(&li);
CounterStart = li.QuadPart;
}
double GetCounter()
{
LARGE_INTEGER li;
QueryPerformanceCounter(&li);
return double(li.QuadPart-CounterStart)/PCFreq;
}

int main()
{
StartCounter();
Sleep(1000);
cout << GetCounter() <<"\n";
return 0;
}

Keterangan selengkapnya baca saja di sini oke.

One thought on “QueryPerformanceCounter

Tinggalkan Balasan

Please log in using one of these methods to post your comment:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s