fixed: don't use thread::sleep_for where it's known to be broken

Fixes #2690.
This commit is contained in:
theuni 2013-06-13 23:46:08 -04:00
parent f2763d6d60
commit e2654c8d28

View File

@ -105,7 +105,11 @@ T* alignup(T* p)
inline void MilliSleep(int64 n)
{
#if BOOST_VERSION >= 105000
// Boost's sleep_for was uninterruptable when backed by nanosleep from 1.50
// until fixed in 1.52. Use the deprecated sleep method for the broken case.
// See: https://svn.boost.org/trac/boost/ticket/7238
#if BOOST_VERSION >= 105000 && (!defined(BOOST_HAS_NANOSLEEP) || BOOST_VERSION >= 105200)
boost::this_thread::sleep_for(boost::chrono::milliseconds(n));
#else
boost::this_thread::sleep(boost::posix_time::milliseconds(n));