PDA

View Full Version : [C] timestamp in microsecondi


trallallero
07-08-2007, 17:45
Qualcuno sa se c´e´ qualche modo per ottenere la data di sistema in micro (o nano) secondi ?

andbin
07-08-2007, 17:58
Qualcuno sa se c´e´ qualche modo per ottenere la data di sistema in micro (o nano) secondi ?Dipende dal S.O.
Su Linux c'è gettimeofday() che fornisce i microsecondi. Su Windows non saprei, non mi sembra che sia possibile avere il tempo con risoluzione inferiore al millisecondo. È vero che c'è la QueryPerformanceCounter ma se non sbaglio è un contatore che non ha nulla a che fare con la data reale.

EDIT: Infatti QueryPerformanceCounter è un contatore dall'avvio del sistema.

71104
07-08-2007, 18:01
vedo una certa GetSystemTime (http://msdn2.microsoft.com/en-us/library/ms724390.aspx) qui su MSDN.

edit: e c'è anche la GetLocalTime (http://msdn2.microsoft.com/en-us/library/ms724338.aspx)! :)

andbin
07-08-2007, 18:04
vedo una certa GetSystemTime (http://msdn2.microsoft.com/en-us/library/ms724390.aspx) qui su MSDN.

edit: e c'è anche la GetLocalTime (http://msdn2.microsoft.com/en-us/library/ms724338.aspx)! :)Entrambe forniscono nella struttura SYSTEMTIME solo i millisecondi.

trallallero
07-08-2007, 18:15
Dipende dal S.O.
Su Linux c'è gettimeofday() che fornisce i microsecondi. Su Windows non saprei, non mi sembra che sia possibile avere il tempo con risoluzione inferiore al millisecondo. È vero che c'è la QueryPerformanceCounter ma se non sbaglio è un contatore che non ha nulla a che fare con la data reale.

EDIT: Infatti QueryPerformanceCounter è un contatore dall'avvio del sistema.

la gettimeofday ??? che figura! non serviva a me ma mi e´ stato chiesto se conoscevo una funzione in C che andasse oltre il secondo.
Ho risposto: non esiste :O

grazie :)

trallallero
07-08-2007, 18:18
Entrambe forniscono nella struttura SYSTEMTIME solo i millisecondi.

si ma vanno beinissimo, mi han detto che hanno un problema in una comunicazione tcp, se arriva un doppio messaggio nello stesso secondo il sistema lo interpreta come un attacco hack. Quindi al millisecondo va piu´ che bene ;)

EDIT: ah ma parlate di funzoni di Windows ... potete continuare fuori da questo 3d per favore, qui´ solo SO seri grazie :O

:D