Salve. Ho bisogno di effettuare un conteggio di secondi.
Per timer di alte performance si deve usare QueryPerformanceCounter e QueyPerformanceFrequency
Se ho capito bene QueryPerformanceFrequency restituisce il numero di volte al secondo del timer, ed è una implementazione della scheda madre quindi quel numero te lo devi tenere e basta.
Dunque io ho fatto in questo modo
Ciò restituisce circa 30000...codice:__int 64 freq; QueryPerformanceFrequency(reiterpret_cast<LARGE_INTEGER *>(&freq));
Dunque stabilisco un periodo facendo
Già questo non va bene perchè restituisce 0...codice:float Periodo = 1 / freq;
poi dopo faccio
Ciò restituisce 0.codice:__int64 Start,End; QueryPerformanceCounter(reiterpret_cast<LARGE_INTEGER *>(&Start)); //vario codice QueryPerformanceCounter(reiterpret_cast<LARGE_INTEGER *>(&End)); Result = (End - Start) * Periodo;
Evidementemente è nella divisione che sbaglio, ma dove?

Rispondi quotando
