Use LOCK macros for non-recursive locks

Instead of std::unique_lock.
This commit is contained in:
Russell Yanofsky
2017-11-08 17:07:40 -05:00
parent 1382913e61
commit 9c4dc597dd
11 changed files with 26 additions and 24 deletions

View File

@@ -5,6 +5,8 @@
#include <threadinterrupt.h>
#include <sync.h>
CThreadInterrupt::CThreadInterrupt() : flag(false) {}
CThreadInterrupt::operator bool() const
@@ -20,7 +22,7 @@ void CThreadInterrupt::reset()
void CThreadInterrupt::operator()()
{
{
std::unique_lock<std::mutex> lock(mut);
LOCK(mut);
flag.store(true, std::memory_order_release);
}
cond.notify_all();
@@ -28,7 +30,7 @@ void CThreadInterrupt::operator()()
bool CThreadInterrupt::sleep_for(std::chrono::milliseconds rel_time)
{
std::unique_lock<std::mutex> lock(mut);
WAIT_LOCK(mut, lock);
return !cond.wait_for(lock, rel_time, [this]() { return flag.load(std::memory_order_acquire); });
}