Use wxGetUTCTimeUSec() in wxStopWatch under Unix for higher precision.
If gettimeofday() is available we can achieve better than millisecond precision (even if it usually isn't as high as microsecond), so use it as clock source in wxStopWatch. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69841 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -112,8 +112,15 @@ wxLongLong wxStopWatch::GetClockFreq() const
|
||||
return gs_perfCounter.freq.QuadPart;
|
||||
#endif // __WXMSW__
|
||||
|
||||
#ifdef HAVE_GETTIMEOFDAY
|
||||
// With gettimeofday() we can have nominally microsecond precision and
|
||||
// while this is not the case in practice, it's still better than
|
||||
// millisecond.
|
||||
return MICROSECONDS_PER_SECOND;
|
||||
#else // !HAVE_GETTIMEOFDAY
|
||||
// Currently milliseconds are used everywhere else.
|
||||
return MILLISECONDS_PER_SECOND;
|
||||
#endif // HAVE_GETTIMEOFDAY/!HAVE_GETTIMEOFDAY
|
||||
}
|
||||
|
||||
void wxStopWatch::Start(long t0)
|
||||
@@ -134,7 +141,11 @@ wxLongLong wxStopWatch::GetCurrentClockValue() const
|
||||
}
|
||||
#endif // __WXMSW__
|
||||
|
||||
#ifdef HAVE_GETTIMEOFDAY
|
||||
return wxGetUTCTimeUSec();
|
||||
#else // !HAVE_GETTIMEOFDAY
|
||||
return wxGetUTCTimeMillis();
|
||||
#endif // HAVE_GETTIMEOFDAY/!HAVE_GETTIMEOFDAY
|
||||
}
|
||||
|
||||
wxLongLong wxStopWatch::TimeInMicro() const
|
||||
|
||||
Reference in New Issue
Block a user