[PATCH] A steadier steady_clock

Paolo Carlini paolo.carlini@oracle.com
Sun Oct 21 16:11:00 GMT 2012


On 10/21/2012 04:00 PM, Sam Varshavchik wrote:
> Based on a casual browsing of clock_gettime(3), CLOCK_MONOTONIC_RAW 
> seems to be a better fit for std::chrono::steady_clock's requirements 
> as given in 20.11.7.2, with recent Linux kernels,
>
> Something like this:
Please always CC library patches to libstdc++@gcc.gnu.org.
>
>
> Index: libstdc++-v3/src/c++11/chrono.cc
> ===================================================================
> --- libstdc++-v3/src/c++11/chrono.cc    (revision 192652)
> +++ libstdc++-v3/src/c++11/chrono.cc    (working copy)
> @@ -70,7 +70,11 @@
>     {
>       timespec tp;
>       // -EINVAL, -EFAULT
> +#ifdef CLOCK_MONOTONIC_RAW
> +      clock_gettime(CLOCK_MONOTONIC_RAW, &tp);
> +#else
>       clock_gettime(CLOCK_MONOTONIC, &tp);
> +#endif
>       return time_point(duration(chrono::seconds(tp.tv_sec)
>                  + chrono::nanoseconds(tp.tv_nsec)));
>     }
>



More information about the Libstdc++ mailing list