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
codice:
__int 64 freq;
QueryPerformanceFrequency(reiterpret_cast<LARGE_INTEGER *>(&freq));
Ciò restituisce circa 30000...
Dunque stabilisco un periodo facendo
codice:
float Periodo = 1 / freq;
Già questo non va bene perchè restituisce 0...
poi dopo faccio
codice:
__int64 Start,End;
QueryPerformanceCounter(reiterpret_cast<LARGE_INTEGER *>(&Start));
//vario codice
QueryPerformanceCounter(reiterpret_cast<LARGE_INTEGER *>(&End));
Result = (End - Start) * Periodo;
Ciò restituisce 0.
Evidementemente è nella divisione che sbaglio, ma dove?