Function core.time.TickDuration.currSystemTick
The current system tick. The number of ticks per second varies from
system to
system.
uses a monotonic clock, so it's
intended for precision timing by comparing relative time values, not for
getting the current system time.
currSystemTick
On Windows, QueryPerformanceCounter
is used. On Mac OS X,
mach_absolute_time
is used, while on other Posix systems,
clock_gettime
is used. If mach_absolute_time
or
clock_gettime
is unavailable, then Posix systems use
gettimeofday
(the decision is made when
is
compiled), which unfortunately, is not monotonic, but if
TickDuration
mach_absolute_time
and clock_gettime
aren't available, then
gettimeofday
is the the best that there is.
Warning:
On some systems, the monotonic clock may stop counting when
the computer goes to
sleep or hibernates. So, the monotonic
clock could be off if that occurs. This is known to
happen
on Mac OS X. It has not been tested whether it occurs on
either Windows or on Linux.
Prototype
static TickDuration currSystemTick() nothrow @property @nogc @trusted;
Throws
if it fails TimeException
to
get the time.
Authors
Jonathan M Davis and Kato Shoichi