TTKMusicPlayer  3.7.0.0
TTKMusicPlayer imitates Kugou UI, the music player uses of qmmp core library based on Qt for windows and linux
Public Member Functions | Private Attributes | List of all members
TTKConcurrentQueue< T > Class Template Reference

The class of the concurrent queue. More...

#include <ttkconcurrentqueue.h>

Public Member Functions

 TTKConcurrentQueue ()
 
void push (const T &record)
 
bool pop (T &record, bool is_blocked=true)
 
size_t size () const
 
bool empty () const
 
void clear ()
 

Private Attributes

std::queue< Tm_queue
 
std::mutex m_mutex
 
std::condition_variable m_condition
 

Detailed Description

template<typename T>
class TTKConcurrentQueue< T >

The class of the concurrent queue.

Author
Greedysky greed.nosp@m.ysky.nosp@m.@163..nosp@m.com

Definition at line 29 of file ttkconcurrentqueue.h.

Constructor & Destructor Documentation

template<typename T >
TTKConcurrentQueue< T >::TTKConcurrentQueue ( )
inline

Object constructor.

Definition at line 35 of file ttkconcurrentqueue.h.

Member Function Documentation

template<typename T >
void TTKConcurrentQueue< T >::clear ( )
inline

Clear container data.

Definition at line 102 of file ttkconcurrentqueue.h.

References TTKConcurrentQueue< T >::empty(), TTKConcurrentQueue< T >::m_queue, and std::swap().

template<typename T >
bool TTKConcurrentQueue< T >::empty ( ) const
inline

Check container data is empty or not.

Definition at line 93 of file ttkconcurrentqueue.h.

References TTKConcurrentQueue< T >::m_mutex, and TTKConcurrentQueue< T >::m_queue.

Referenced by TTKConcurrentQueue< T >::clear().

template<typename T >
bool TTKConcurrentQueue< T >::pop ( T record,
bool  is_blocked = true 
)
inline
template<typename T >
void TTKConcurrentQueue< T >::push ( const T record)
inline
template<typename T >
size_t TTKConcurrentQueue< T >::size ( ) const
inline

Get container data size.

Definition at line 84 of file ttkconcurrentqueue.h.

References TTKConcurrentQueue< T >::m_mutex, and TTKConcurrentQueue< T >::m_queue.

Member Data Documentation

template<typename T >
std::condition_variable TTKConcurrentQueue< T >::m_condition
private
template<typename T >
std::mutex TTKConcurrentQueue< T >::m_mutex
mutableprivate
template<typename T >
std::queue<T> TTKConcurrentQueue< T >::m_queue
private

The documentation for this class was generated from the following file: