![]() |
|
|
google unix.com
|
|||||||
| Forum | Registrera | Forum Regler | Länkar | Album | FAQ | Medlemslista | Kalender | Söka | Dagens inlägg | Markera forum som lästa |
| High Level Programming Post frågor om C, C + +, Java, SQL och andra programmeringsspråk här. |
Mer UNIX och Linux Forum Ämnen Du kan hitta Helpful
|
||||
| Tråd | Thread Starter | Forum | Svar | Senaste Inlägg |
| Hur skriva ut största och minsta antal. | amp10388 | UNIX for Dummies Frågor & Svar | 2 | 05-07-2008 11:28 |
| kontroll av de minsta och största antalet | subin_bala | Shell-programmering och Skript | 4 | 04-24-2008 08:32 |
| DNS namn resolution | e250user | Sun Solaris | 1 | 07-25-2006 12:13 |
| TCP / IP namn resolution | progressdll | UNIX för avancerade & Expertanvändare | 2 | 05-07-2002 12:33 |
| Resolution ..? | Linux_fan | UNIX Desktop for Dummies Frågor & Svar | 3 | 03-06-2002 11:33 |
![]() |
|
|
LinkBack | Thread Tools | Sök i denna tråd | Rate Thread | Visningslägen |
|
|
|
||||
|
De minsta upplösning för gettimeofday skulle mikrosekunder enligt den manpage.
|
|
||||
|
gettimeofday ger dig rätt datum och tid som anges i sekunder eller mikrosekunder från UNIX Epoch men inte en lösning av systemomfattande klocka så vara specifik om vad du vill?
|
|
||||
|
Hämta klockan resolutoin
/*
* Skriv ut gettimeofday () klockan resolution för denna maskin. * * Kod tas från Iozone. Iozone Filesystem Benchmark * Författare: Don CAPPS * * / # include <sys/time.h> # include <stdio.h> # include <stdlib.h> # include <sys/types.h> # define THISVERSION "version $ Revision: 1.2 $" dubbel time_res, dröjsmål; void get_resolution (); / * Fungerar med de flesta kompilatorer * / statisk dubbel time_so_far1 (); / * Fungerar med de flesta kompilatorer * / / * * Mäta och skriva ut gettimeofday () upplösning. * / viktigaste () ( printf ( "\ n \ nMeasuring den gettimeofday () upplösning \ n \ n"); get_resolution (); printf ( "temne resolution av gettimeofday () \u003d% f sekunder \ n", time_res); printf ( "temne resolution av gettimeofday () \u003d% f milli sekunder \ n", time_res * 1000); printf ( "temne resolution av gettimeofday () \u003d% f mikro sekunder \ n \ n", time_res * (1000 * 1000)); printf ( "Förutsatt, artighet av Iozone. http://www.iozone.org \ n \ n"); ) / * * Hävas koden från Iozone. * / # ifdef HAVE_ANSIC_C void get_resolution (innehåll) # else void get_resolution () # endif ( dubbel StartTime, finishtime; lång j; igen: finishtime \u003d time_so_far1 (); / * Värm upp instruktionen cache * / StartTime \u003d time_so_far1 (); / * Värm upp instruktionen cache * / dröjsmål \u003d j \u003d 0; / * Värm upp data cache * / samtidigt (1) ( StartTime \u003d time_so_far1 (); for (j \u003d 0, j <dröjsmål, j + +) ; finishtime \u003d time_so_far1 (); if (StartTime \u003d\u003d finishtime) dröjsmål + +; annan break; ) time_res \u003d (finishtime-StartTime) / 1000000,0; ) / * * Hävas koden från Iozone. * / /************************************************* ***********************/ / * Temne mätning rutiner. * / / * Return Temne i mikrosekunder * / /************************************************* ***********************/ # ifdef HAVE_ANSIC_C statisk dubbel time_so_far1 (innehåll) # else statisk dubbel time_so_far1 () # endif ( / * För Windows de time_of_day () är värdelöst. Det steg i 55 milli andra * / / * Höjningar. Genom att använda Win32api man kan få tillgång till högpresterande * / / * Mätning gränssnitt. Med denna kan man gå tillbaka till 8-9 * / / * Mikrosekund resolution. * / # ifdef Windows LARGE_INTEGER frekv, motverka; dubbel wintime; dubbel bigcounter; QueryPerformanceFrequency (& frekv); QueryPerformanceCounter (& counter); bigcounter \u003d (double) counter.HighPart * (double) 0xFFFFFFFF + (double) counter.LowPart; wintime \u003d (double) (bigcounter / (double) freq.LowPart); return ((double) wintime * 1000000,0); # else # om definitionen (OSFV4) | | definieras (OSFV3) | | definieras (OSFV5) strukt timespec gp; if (getclock (TIMEOFDAY (strukt timespec *) & GP) \u003d\u003d -1) perror ( "getclock"); avkastning (((double) (gp.tv_sec) * 1000000,0) + (((Float) (gp.tv_nsec)) * 0,001)); # else strukt timeval tp; if (gettimeofday (& tp, (strukt tidszon *) NULL) \u003d\u003d -1) perror ( "gettimeofday"); return ((double) (tp.tv_sec) * 1000000,0) + (((double) tp.tv_usec)); # endif # endif ) |