From 99d35c37db29163013c93c058798703d80150a7f Mon Sep 17 00:00:00 2001 From: Brad Hefta-Gaub Date: Fri, 6 May 2016 10:42:07 -0700 Subject: [PATCH] switch OctreeSendThread to use std::this_thread::sleep_for() instead of usleep() --- .../src/octree/OctreeSendThread.cpp | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/assignment-client/src/octree/OctreeSendThread.cpp b/assignment-client/src/octree/OctreeSendThread.cpp index ec812db8e8..94349bd3bc 100644 --- a/assignment-client/src/octree/OctreeSendThread.cpp +++ b/assignment-client/src/octree/OctreeSendThread.cpp @@ -9,6 +9,9 @@ // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // +#include +#include + #include #include #include @@ -101,13 +104,16 @@ bool OctreeSendThread::process() { int elapsed = (usecTimestampNow() - start); int usecToSleep = OCTREE_SEND_INTERVAL_USECS - elapsed; - if (usecToSleep > 0) { - PerformanceWarning warn(false,"OctreeSendThread... usleep()",false,&_usleepTime,&_usleepCalls); - usleep(usecToSleep); - } else { + if (usecToSleep <= 0) { const int MIN_USEC_TO_SLEEP = 1; - usleep(MIN_USEC_TO_SLEEP); + usecToSleep = MIN_USEC_TO_SLEEP; } + + { + PerformanceWarning warn(false,"OctreeSendThread... usleep()",false,&_usleepTime,&_usleepCalls); + std::this_thread::sleep_for(std::chrono::microseconds(usecToSleep)); + } + } return isStillRunning(); // keep running till they terminate us