X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=common%2Fos_time.hpp;h=3e4960e74554d0179c96b4582202d52390c61378;hb=HEAD;hp=75175d85f6ecb15d8fc69622e10526b23ab5bb3d;hpb=ee659c84695e9f94b1f6a5f8be203dc0012ca685;p=apitrace diff --git a/common/os_time.hpp b/common/os_time.hpp index 75175d8..3e4960e 100644 --- a/common/os_time.hpp +++ b/common/os_time.hpp @@ -32,13 +32,16 @@ #if defined(_WIN32) -#include -#elif defined(__linux__) -#include -#elif defined(__APPLE__) -#include +# include #else -#include +# if defined(__linux__) +# include +# elif defined(__APPLE__) +# include +# else +# include +# endif +# include #endif @@ -70,7 +73,7 @@ namespace os { return counter.QuadPart; #elif defined(__linux__) struct timespec tp; - if (clock_gettime(CLOCK_REALTIME, &tp) == -1) { + if (clock_gettime(CLOCK_MONOTONIC, &tp) == -1) { return 0; } return tp.tv_sec * 1000000000LL + tp.tv_nsec; @@ -88,6 +91,15 @@ namespace os { #endif } + // Suspend execution + inline void + sleep(unsigned long usecs) { +#if defined(_WIN32) + Sleep((usecs + 999) / 1000); +#else + usleep(usecs); +#endif + } } /* namespace os */