diff options
author | DongHun Kwak <dh0128.kwak@samsung.com> | 2016-10-06 10:33:54 +0900 |
---|---|---|
committer | DongHun Kwak <dh0128.kwak@samsung.com> | 2016-10-06 10:36:09 +0900 |
commit | d9ec475d945d3035377a0d89ed42e382d8988891 (patch) | |
tree | 34aff2cee4b209906243ab5499d61f3edee2982f /boost/thread/v2 | |
parent | 71d216b90256936a9638f325af9bc69d720e75de (diff) | |
download | boost-d9ec475d945d3035377a0d89ed42e382d8988891.tar.gz boost-d9ec475d945d3035377a0d89ed42e382d8988891.tar.bz2 boost-d9ec475d945d3035377a0d89ed42e382d8988891.zip |
Imported Upstream version 1.60.0
Change-Id: Ie709530d6d5841088ceaba025cbe175a4ef43050
Signed-off-by: DongHun Kwak <dh0128.kwak@samsung.com>
Diffstat (limited to 'boost/thread/v2')
-rw-r--r-- | boost/thread/v2/thread.hpp | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/boost/thread/v2/thread.hpp b/boost/thread/v2/thread.hpp index 181661a34e..53560610e2 100644 --- a/boost/thread/v2/thread.hpp +++ b/boost/thread/v2/thread.hpp @@ -91,7 +91,19 @@ namespace boost cv.wait_until(lk, t); } -#ifdef BOOST_THREAD_SLEEP_FOR_IS_STEADY +#if defined BOOST_THREAD_HAS_CONDATTR_SET_CLOCK_MONOTONIC && defined BOOST_CHRONO_HAS_CLOCK_STEADY + template <class Rep, class Period> + void sleep_for(const chrono::duration<Rep, Period>& d) + { + using namespace chrono; + if (d > duration<Rep, Period>::zero()) + { + steady_clock::time_point c_timeout = steady_clock::now() + ceil<nanoseconds>(d); + sleep_until(c_timeout); + } + } + +#elif defined BOOST_THREAD_SLEEP_FOR_IS_STEADY template <class Rep, class Period> void sleep_for(const chrono::duration<Rep, Period>& d) @@ -127,7 +139,8 @@ namespace boost using namespace chrono; if (d > duration<Rep, Period>::zero()) { - steady_clock::time_point c_timeout = steady_clock::now() + ceil<nanoseconds>(d); + //system_clock::time_point c_timeout = time_point_cast<system_clock::duration>(system_clock::now() + ceil<nanoseconds>(d)); + system_clock::time_point c_timeout = system_clock::now() + ceil<system_clock::duration>(d); sleep_until(c_timeout); } } |