[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug-gnulib] RE: GNULib Module gettime Breaks CVS Build On Windows

From: Jim.Hyslop
Subject: [Bug-gnulib] RE: GNULib Module gettime Breaks CVS Build On Windows
Date: Wed, 12 May 2004 10:22:14 -0400

Derek Robert Price wrote:
> Jim.Hyslop wrote:
> >The implementation looks reasonable on a quick glance (I haven't
> checked it
> >in detail), but one thing you should be aware of is that, 
> although the
> >FILETIME is capable of containing times on the order of 
> hectonanoseconds,
> >the operating system only refreshes the time returned every 10.4
> >milliseconds or so. This function will *not* give you a 
> high-resolution
> >time.
> Hi Jim!
> Are you aware of any function available on Windows that _does_ yield a
> high resolution time?  Preferrably one based on some standard, such as
> C89, C99, or POSIX?

Unfortunately, no, I'm not aware of any. It appears that all the high-level
functions use the system timer resolution of 10 ms.

NTP (www.ntp.org) hacks around it by using the Windows
QueryPerformanceCounter() and QueryPerformanceFrequency() functions, which
yield a resolution around 300 ns (on my machine, at least).

BTW, I'm also experimenting with the select() workaround (to overcome
Sleep()'s 10 ms granularity) - just in case this is another function that
accepts a high-resolution input but makes it lower resolution under the
hood. I'll post the results as soon as I have finished.

Jim Hyslop
Senior Software Designer
Leitch Technology International Inc. (http://www.leitch.com)
Columnist, C/C++ Users Journal (http://www.cuj.com/experts)

reply via email to

[Prev in Thread] Current Thread [Next in Thread]