|
|
@ -20,6 +20,7 @@ |
|
|
|
#include <vector> |
|
|
|
#include <vector> |
|
|
|
#include <string> |
|
|
|
#include <string> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#include <boost/version.hpp> |
|
|
|
#include <boost/thread.hpp> |
|
|
|
#include <boost/thread.hpp> |
|
|
|
#include <boost/filesystem.hpp> |
|
|
|
#include <boost/filesystem.hpp> |
|
|
|
#include <boost/filesystem/path.hpp> |
|
|
|
#include <boost/filesystem/path.hpp> |
|
|
@ -104,7 +105,11 @@ T* alignup(T* p) |
|
|
|
|
|
|
|
|
|
|
|
inline void MilliSleep(int64 n) |
|
|
|
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)); |
|
|
|
boost::this_thread::sleep_for(boost::chrono::milliseconds(n)); |
|
|
|
#else |
|
|
|
#else |
|
|
|
boost::this_thread::sleep(boost::posix_time::milliseconds(n)); |
|
|
|
boost::this_thread::sleep(boost::posix_time::milliseconds(n)); |
|
|
|