STAPL API Reference          
Overview   Containers   Algorithms   Views   Skeletons   Run-Time System
Modules     Classes    
List of all members | Public Member Functions | Public Types
stapl::runtime::intrusive_mpsc_queue< T > Class Template Reference

An intrusive lock-free MPSC (multiple producer, single consumer) queue. More...

Public Member Functions

 intrusive_mpsc_queue (intrusive_mpsc_queue const &)=delete
 
intrusive_mpsc_queueoperator= (intrusive_mpsc_queue const &)=delete
 
bool empty (void) const noexcept
 
void push (T &t) noexcept
 
T * try_pop (void) noexcept
 

Public Types

typedef T value_type
 
typedef value_type const & const_reference
 
typedef value_type & reference
 
typedef value_type const * const_pointer
 
typedef value_type * pointer
 

Detailed Description

template<typename T>
class stapl::runtime::intrusive_mpsc_queue< T >

An intrusive lock-free MPSC (multiple producer, single consumer) queue.

Template Parameters
TObject type.

The objects are kept in an lock-free singly linked list in reversed order. Since this is an intrusive queue, T has to inherit from intrusive_mpsc_queue_hook.


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