diff options
author | Shauren <shauren.trinity@gmail.com> | 2014-08-15 20:13:34 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2014-08-15 20:13:34 +0200 |
commit | d0176f985d20604a23396c326af303327ef989be (patch) | |
tree | 3b3e2ecbeb55531cb4863f0ad063f45699429ace /src/server/shared/Threading/ProducerConsumerQueue.h | |
parent | 4a741258f145af59a224760651e735297ad92101 (diff) | |
parent | aab4ab166de351e2c6e1c26a9d4001328e253ea9 (diff) |
Merge branch 'master' of https://github.com/TrinityCore/TrinityCore into 4.3.4
Conflicts:
src/server/game/Globals/ObjectMgr.cpp
src/server/scripts/Commands/cs_reload.cpp
src/server/shared/Database/Implementation/WorldDatabase.cpp
Diffstat (limited to 'src/server/shared/Threading/ProducerConsumerQueue.h')
-rw-r--r-- | src/server/shared/Threading/ProducerConsumerQueue.h | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/src/server/shared/Threading/ProducerConsumerQueue.h b/src/server/shared/Threading/ProducerConsumerQueue.h index accb0aebb11..a76b8b0b5c0 100644 --- a/src/server/shared/Threading/ProducerConsumerQueue.h +++ b/src/server/shared/Threading/ProducerConsumerQueue.h @@ -39,10 +39,8 @@ public: void Push(const T& value) { - { - std::lock_guard<std::mutex> lock(_queueLock); - _queue.push(std::move(value)); - } + std::lock_guard<std::mutex> lock(_queueLock); + _queue.push(std::move(value)); _condition.notify_one(); } @@ -72,10 +70,7 @@ public: { std::unique_lock<std::mutex> lock(_queueLock); - while (_queue.empty() && !_shutdown) - { - _condition.wait(lock); - } + _condition.wait(lock, [this]() { return !_queue.empty() || _shutdown; }); if (_queue.empty() || _shutdown) return; |