E' possibile sapere la differerenza fra 2 tempi in float?
Se faccio cosi' ottengo solamente una differenza in secondi:
long t=time(0);
...
cout<<time(0)-t;
E' possibile sapere la differerenza fra 2 tempi in float?
Se faccio cosi' ottengo solamente una differenza in secondi:
long t=time(0);
...
cout<<time(0)-t;
gettimeofday() su Linux, GetTickCount() su Win32Originariamente inviato da Cesaropa12
E' possibile sapere la differerenza fra 2 tempi in float?
Se faccio cosi' ottengo solamente una differenza in secondi:
long t=time(0);
...
cout<<time(0)-t;
Tieni presente che la risoluzione della GetTickCount dipende da quella del timer che in genere non e' minore di 15 ... 18 ms. Quindi non potrai apprezzare mai differenze di tempo minori.
Inoltre, la GetTickCount usa un contatore a 32 bit che ritorna a zero dopo poco piu' di 49 giorni. Se ci sono problemi, a partire da Vista, puoi usare la GetTickCount64.
Se vuoi una maggiore precisione, devi usare i
Multimedia Timers
di cui puoi leggere a partire da
http://msdn2.microsoft.com/en-us/library/ms712704.aspx
GetTickCount() e timeGetTime() hanno entrambe una granularità che si aggira intorno ai 15~16 millisecondi.
Si può fare di meglio usando il timer ad alta risoluzione, cioè: QueryPerformanceFrequency() insieme a QueryPerformanceCounter().
Come mai ci sono nomi di funzioni diverse sui due sistemi?
Perché per fare queste cose (informazioni sul tempo ad alta risoluzione) e altre cose, si devono usare funzioni non standard e specifiche del sistema operativo.Originariamente inviato da Cesaropa12
Come mai ci sono nomi di funzioni diverse sui due sistemi?
Ho utilizzato la funzione gettimeofday, tuttavia, non riesco a capire cosa vuol dire tv_sec. Millesecondi per quell'istanza di tempo?
Originariamente inviato da Cesaropa12
Ho utilizzato la funzione gettimeofday, tuttavia, non riesco a capire cosa vuol dire tv_sec. Millesecondi per quell'istanza di tempo?Secondi/Microsecondi dalle 00:00:00 UTC, January 1, 1970codice:struct timeval { time_t tv_sec; /* seconds */ suseconds_t tv_usec; /* microseconds */ };