# HG changeset patch # User Sebastien Jodogne # Date 1473231935 -7200 # Node ID bb93de4f4562ea738c87daea0609c2b161422de5 # Parent acb4cd4af771a9dbb6b220848e4bb6cd152c31cd# Parent 93afa6134ab3ad53d16038acba84c88f8dab424b merge diff -r acb4cd4af771 -r bb93de4f4562 Core/MultiThreading/SharedMessageQueue.cpp --- a/Core/MultiThreading/SharedMessageQueue.cpp Wed Sep 07 09:03:37 2016 +0200 +++ b/Core/MultiThreading/SharedMessageQueue.cpp Wed Sep 07 09:05:35 2016 +0200 @@ -185,4 +185,24 @@ boost::mutex::scoped_lock lock(mutex_); isFifo_ = false; } + + void SharedMessageQueue::Clear() + { + boost::mutex::scoped_lock lock(mutex_); + + if (queue_.empty()) + { + return; + } + else + { + while (!queue_.empty()) + { + std::auto_ptr message(queue_.front()); + queue_.pop_front(); + } + + emptied_.notify_all(); + } + } } diff -r acb4cd4af771 -r bb93de4f4562 Core/MultiThreading/SharedMessageQueue.h --- a/Core/MultiThreading/SharedMessageQueue.h Wed Sep 07 09:03:37 2016 +0200 +++ b/Core/MultiThreading/SharedMessageQueue.h Wed Sep 07 09:05:35 2016 +0200 @@ -78,5 +78,7 @@ void SetFifoPolicy(); void SetLifoPolicy(); + + void Clear(); }; }