Oppure

Loading
20/03/10 23:13
Postato originariamente da NickoMaiden:

timer ad alta risoluzione mmm interessante!
cmq ho appena fatto una prova, (almeno nel mio pc) ci sono dai 30 ai 50 ms di distacco inoltre si ripetono in maniera maniacale 31 e 47 :O


Corretto ... 47-31 = 16 ... come ti dicevo ... tra 15 e 20 ms anche se ne sono passati 5 o 6 ... è la minima risoluzione del sistema (normalmente).

cmq sti timer ad alta risoluzione com'è che teoricamente funzionano( tanto siamo ancora in argomento :D)?


decompile.com/cpp/faq/…
20/03/10 23:24
NickoMaiden
vista la pagina, bello :O non riesco ad immaginare un'applicazione pratica che sfrutti questo timer cmq buono a sapersi che esiste,ne terrò conto di sicuro.
:k: grazie 1000 per le risposte e la pazienza
(mo vediamo che ci dice l'autore del topic a riguardo)
aaa
21/03/10 0:06
HeDo

i timer ad alta risoluzione vengono usati ad esempio nel playback di stream audio/video, in situazioni "time critical" legate a dell'hardware esterno o per effettuare il profiling di un algoritmo nel modo più accurato possibile.
aaa
21/03/10 13:08
robrock80
Ciao. Ti ringrazio per la risposta ma a me serve il tempo univoco e cioè il numero di millisecondi compresi gli anni i mesi e i giorni, per farti capire, mi serve una funzione come il metodo di java System.getCurrentTimeMillis(): nella struct che mi hai indicato ho visto che ci sono sia gli anni, che i mesi, che i giorni ma il problema ora è che ora di mezzo ci sono anche gli anni bisestili e i mesi hanno durata diversa
aaa
21/03/10 13:15
Prova così

#include <windows.h>

SYSTEMTIME systemTime;
GetSystemTime( &systemTime );

FILETIME fileTime;
SystemTimeToFileTime( &systemTime, &fileTime );

ULARGE_INTEGER uli;
uli.LowPart = fileTime.dwLowDateTime; 
uli.HighPart = fileTime.dwHighDateTime;

ULONGLONG systemTimeIn_ms( uli.QuadPart/10000 );

printf("%ul\n", systemTimeIn_ms);
21/03/10 13:25
robrock80
Non mi trova la funzione systemTimeIn_ms
aaa
21/03/10 13:33
robrock80
ahhhh... E' un costruttore... Perfetto ha funzionato... Ora lo posso convertire a long con un semplice cast?
aaa
21/03/10 18:53
Postato originariamente da robrock80:

ahhhh... E' un costruttore... Perfetto ha funzionato... Ora lo posso convertire a long con un semplice cast?


Un costruttore? Che dici?

Non devi convertirlo a long ... il valore deve essere a 64 bit ... (sono tanti i millisecondi ...)