1 #ifndef theplu_yat_utility_queue
2 #define theplu_yat_utility_queue
21 #include <boost/thread.hpp>
60 typedef typename std::deque<T>::size_type
size_type;
79 boost::unique_lock<boost::mutex> lock(mutex_);
93 boost::unique_lock<boost::mutex> lock(mutex_);
95 condition_.wait(lock);
111 boost::unique_lock<boost::mutex> lock(mutex_);
116 condition_.notify_one();
125 boost::unique_lock<boost::mutex> lock(mutex_);
136 boost::unique_lock<boost::mutex> lock(mutex_);
158 mutable boost::mutex mutex_;
159 boost::condition_variable condition_;
std::deque< T >::size_type size_type
Definition: Queue.h:60
bool empty(void) const
Definition: Queue.h:77
bool try_pop(T &value)
Definition: Queue.h:134
Queue(void)
Create a Queue with no elements.
Definition: Queue.h:65
Multi-thread safe queue.
Definition: Queue.h:51
Queue(const Queue &other)
Copy constructor.
Definition: Queue.h:72
T value_type
Type of object stored in Queue.
Definition: Queue.h:55
void pop(T &value)
access next element is queue
Definition: Queue.h:91
void push(const T &t)
insert an element into container
Definition: Queue.h:109
size_type size(void) const
Definition: Queue.h:123
Queue & operator=(const Queue &lhs)
assignment operator
Definition: Queue.h:150