Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    211

    [c++]Differenza di tempo in millesecondi

    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;

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254

    Re: [c++]Differenza di tempo in millesecondi

    Originariamente 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;
    gettimeofday() su Linux, GetTickCount() su Win32
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  3. #3
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    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

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254
    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().
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    211
    Come mai ci sono nomi di funzioni diverse sui due sistemi?

  6. #6
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254
    Originariamente inviato da Cesaropa12
    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.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    211
    Ho utilizzato la funzione gettimeofday, tuttavia, non riesco a capire cosa vuol dire tv_sec. Millesecondi per quell'istanza di tempo?

  8. #8
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254
    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?
    codice:
    struct timeval {
           time_t         tv_sec;        /* seconds */
           suseconds_t    tv_usec;  /* microseconds */
    };
    Secondi/Microsecondi dalle 00:00:00 UTC, January 1, 1970
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.