comparison Core/MultiThreading/SharedMessageQueue.cpp @ 2078:93afa6134ab3

SharedMessageQueue::Clear
author Sebastien Jodogne <s.jodogne@gmail.com>
date Thu, 01 Sep 2016 16:54:35 +0200
parents b1291df2f780
children a3a65de1840f
comparison
equal deleted inserted replaced
2077:14ce887a9182 2078:93afa6134ab3
183 void SharedMessageQueue::SetLifoPolicy() 183 void SharedMessageQueue::SetLifoPolicy()
184 { 184 {
185 boost::mutex::scoped_lock lock(mutex_); 185 boost::mutex::scoped_lock lock(mutex_);
186 isFifo_ = false; 186 isFifo_ = false;
187 } 187 }
188
189 void SharedMessageQueue::Clear()
190 {
191 boost::mutex::scoped_lock lock(mutex_);
192
193 if (queue_.empty())
194 {
195 return;
196 }
197 else
198 {
199 while (!queue_.empty())
200 {
201 std::auto_ptr<IDynamicObject> message(queue_.front());
202 queue_.pop_front();
203 }
204
205 emptied_.notify_all();
206 }
207 }
188 } 208 }