#include #include using namespace std; int main(int argc, char** argv) { double frequency = -1.0; __int64 v; if(QueryPerformanceFrequency(reinterpret_cast(&v))) { frequency = static_cast(v); } printf("frequency %f\n", frequency); while(true) { __int64 now; QueryPerformanceCounter(reinterpret_cast(&now)); now /= frequency; __int64 wakeTime = now + 15; while(wakeTime > now) { cout << "waiting " << wakeTime - now << "(s) (wakeTime = " << wakeTime << ", now = " << now << ")\n"; Sleep((wakeTime - now) * 1000); QueryPerformanceCounter(reinterpret_cast(&now)); now /= frequency; } } }