Asio provides timers based on the std::chrono
facilities via the basic_waitable_timer
class template. The typedefs system_timer,
steady_timer and high_resolution_timer
utilise the standard clocks system_clock
,
steady_clock
and high_resolution_clock
respectively.
Support for the std::chrono
facilities is automatically enabled
for g++
4.6 and later, when the -std=c++0x
or -std=gnu++0x
compiler options are used. (Note that,
for g++
, the draft-standard monotonic_clock
is used in place of steady_clock
.)
Support may be disabled by defining ASIO_DISABLE_STD_CHRONO
,
or explicitly enabled for other compilers by defining ASIO_HAS_STD_CHRONO
.
When standard chrono
is
unavailable, Asio will otherwise use the Boost.Chrono library. The basic_waitable_timer
class template may be used with either.