From 012a44bd13ab41d056e7d3884a39027b6cea62b5 Mon Sep 17 00:00:00 2001 From: chai Date: Tue, 30 Jul 2019 22:12:11 +0800 Subject: =?UTF-8?q?*=E4=BF=AE=E6=94=B9=E6=88=90=E5=91=98=E5=8F=98=E9=87=8F?= =?UTF-8?q?=E5=89=8D=E7=BC=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/asura-utils/threading/conditional.cpp | 58 +++++++++++----------- 1 file changed, 29 insertions(+), 29 deletions(-) (limited to 'source/modules/asura-utils/threading/conditional.cpp') diff --git a/source/modules/asura-utils/threading/conditional.cpp b/source/modules/asura-utils/threading/conditional.cpp index eb26e82..e49bfde 100644 --- a/source/modules/asura-utils/threading/conditional.cpp +++ b/source/modules/asura-utils/threading/conditional.cpp @@ -6,8 +6,8 @@ namespace AsuraEngine { Conditional::Conditional() - : mWaiting(0) - , mSignals(0) + : m_Waiting(0) + , m_Signals(0) { } @@ -17,38 +17,38 @@ namespace AsuraEngine void Conditional::Signal() { - mMutex.Lock(); - if (mWaiting > mSignals) + m_Mutex.Lock(); + if (m_Waiting > m_Signals) { - ++mSignals; - signal(mWaitSem); - mMutex.Unlock(); - wait(mDoneSem); + ++m_Signals; + signal(m_WaitSem); + m_Mutex.Unlock(); + wait(m_DoneSem); } else { - mMutex.Unlock(); + m_Mutex.Unlock(); } } void Conditional::Broadcast() { - mMutex.Lock(); - if (mWaiting> mSignals) { + m_Mutex.Lock(); + if (m_Waiting> m_Signals) { int i, num_waiting; - num_waiting = (mWaiting - mSignals); - mSignals = mWaiting; + num_waiting = (m_Waiting - m_Signals); + m_Signals = m_Waiting; for (i = 0; i < num_waiting; ++i) { - signal(mWaitSem); + signal(m_WaitSem); } - mMutex.Unlock(); + m_Mutex.Unlock(); for (i = 0; i < num_waiting; ++i) { - wait(mDoneSem); + wait(m_DoneSem); } } else { - mMutex.Unlock(); + m_Mutex.Unlock(); } } @@ -57,27 +57,27 @@ namespace AsuraEngine { bool retval; - mMutex.Lock(); - ++mWaiting; - mMutex.Unlock(); + m_Mutex.Lock(); + ++m_Waiting; + m_Mutex.Unlock(); mutex->Unlock(); - retval = wait(mWaitSem, timeout); + retval = wait(m_WaitSem, timeout); - mMutex.Lock(); - if (mSignals > 0) { + m_Mutex.Lock(); + if (m_Signals > 0) { if (!retval) { - wait(mWaitSem); + wait(m_WaitSem); } - signal(mDoneSem); + signal(m_DoneSem); - --mSignals; + --m_Signals; } - --mWaiting; - mMutex.Unlock(); + --m_Waiting; + m_Mutex.Unlock(); - mMutex.Lock(); + m_Mutex.Lock(); return retval; } -- cgit v1.1-26-g67d0