* hires.h (hires_ns::nsecs): Declare with bool parameter.
* times.cc (hires_ns::nsecs): Take bool parameter. If set to true, don't use prime value (== return system wide absolute value).
This commit is contained in:
parent
99e6ee04d6
commit
8f81761b69
|
@ -1,3 +1,9 @@
|
|||
2013-04-11 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* hires.h (hires_ns::nsecs): Declare with bool parameter.
|
||||
* times.cc (hires_ns::nsecs): Take bool parameter. If set to true,
|
||||
don't use prime value (== return system wide absolute value).
|
||||
|
||||
2013-04-08 Christopher Faylor <me.cygwin2013@cgf.cx>
|
||||
|
||||
* cygtls.h (_cygtls::reset_signal_arrived): Actually reset the
|
||||
|
|
|
@ -48,7 +48,7 @@ class hires_ns : public hires_base
|
|||
double freq;
|
||||
void prime ();
|
||||
public:
|
||||
LONGLONG nsecs ();
|
||||
LONGLONG nsecs (bool monotonic = false);
|
||||
LONGLONG usecs () {return nsecs () / 1000LL;}
|
||||
LONGLONG resolution();
|
||||
};
|
||||
|
|
|
@ -477,7 +477,7 @@ hires_ns::prime ()
|
|||
}
|
||||
|
||||
LONGLONG
|
||||
hires_ns::nsecs ()
|
||||
hires_ns::nsecs (bool monotonic)
|
||||
{
|
||||
if (!inited)
|
||||
prime ();
|
||||
|
@ -495,7 +495,8 @@ hires_ns::nsecs ()
|
|||
}
|
||||
|
||||
// FIXME: Use round() here?
|
||||
now.QuadPart = (LONGLONG) (freq * (double) (now.QuadPart - primed_pc.QuadPart));
|
||||
now.QuadPart = (LONGLONG) (freq * (double)
|
||||
(now.QuadPart - (monotonic ? 0LL : primed_pc.QuadPart)));
|
||||
return now.QuadPart;
|
||||
}
|
||||
|
||||
|
@ -642,7 +643,7 @@ clock_gettime (clockid_t clk_id, struct timespec *tp)
|
|||
|
||||
case CLOCK_MONOTONIC:
|
||||
{
|
||||
LONGLONG now = ntod.nsecs ();
|
||||
LONGLONG now = ntod.nsecs (true);
|
||||
if (now == (LONGLONG) -1)
|
||||
return -1;
|
||||
|
||||
|
|
Loading…
Reference in New Issue